js写一个判断当前数组对象没有这个对象就插入,有就不插入
时间: 2023-06-04 22:04:27 浏览: 387
可以使用Array.prototype.findIndex方法来查找该对象在数组中的位置,如果返回-1则表示该对象不存在,即可使用Array.prototype.push方法将该对象插入数组中。
示例代码如下:
```javascript
function insertIfNotExist(arr, obj) {
if (arr.findIndex(item => item === obj) === -1) {
arr.push(obj);
}
}
```
调用方式:
```javascript
const arr = [{name: 'Alice'}, {name: 'Bob'}];
insertIfNotExist(arr, {name: 'Charlie'}); // 会插入
insertIfNotExist(arr, {name: 'Bob'}); // 不会插入
console.log(arr); // [{name: 'Alice'}, {name: 'Bob'}, {name: 'Charlie'}]
```
相关问题
js写一个判断当数组没有这个值就插入,有就不插入
可以使用 Array.includes() 方法判断数组是否包含该值,如果不包含则使用 Array.push() 方法将该值添加到数组中。
示例代码如下:
```
function insertIfNotExists(arr, val) {
if (!arr.includes(val)) {
arr.push(val);
}
}
```
使用方法:
```
const arr = [1, 2, 3];
insertIfNotExists(arr, 2); // 不会插入重复的值
insertIfNotExists(arr, 4); // 会插入不存在的值
console.log(arr); // [1, 2, 3, 4]
```
js push 将一个数组对象插入另一个数组对象后面
可以使用 `Array.prototype.push.apply()` 方法将一个数组对象插入到另一个数组对象的后面。
假设有两个数组对象 `arr1` 和 `arr2`,其中 `arr1` 包含若干个元素, `arr2` 包含若干个元素,要将 `arr2` 插入到 `arr1` 的后面,可以使用以下代码:
```javascript
Array.prototype.push.apply(arr1, arr2);
```
这个方法会将 `arr2` 中的元素依次插入到 `arr1` 的末尾。
另外,如果你使用 ES6 或以上版本的 JavaScript,也可以使用展开运算符 `...` 来实现相同的效果:
```javascript
arr1.push(...arr2);
```
这个方法会将 `arr2` 中的元素依次插入到 `arr1` 的末尾。
阅读全文