vue 删除 数组和另一个数组下标相同的数据
时间: 2023-10-08 13:06:32 浏览: 89
假设要删除的数组为 `arr1`,另一个数组为 `arr2`,可以使用 `Array.prototype.filter()` 方法结合 `Array.prototype.indexOf()` 方法实现:
```javascript
const arr1 = [1, 2, 3, 4];
const arr2 = ['a', 'b', 'c', 'd'];
const filteredArr1 = arr1.filter((item, index) => arr2.indexOf(index) === -1);
console.log(filteredArr1); // [2, 4]
```
上述代码中,`filter()` 方法会返回一个新数组,新数组的元素是原数组中满足条件的元素。这里的条件是,该元素在原数组中的下标不在 `arr2` 中出现过,即该元素不需要被删除。因此,我们使用 `indexOf()` 方法查找 `arr2` 中是否存在该下标,如果不存在则该元素满足条件。
最终,`filteredArr1` 数组中的元素就是需要保留的,即原数组中下标不与 `arr2` 相同的元素。
相关问题
vue 删除 数组1中下标和另一个数组内容相同的数据
假设要删除的数组为 `arr1`,另一个数组为 `arr2`,可以使用 `Array.prototype.filter()` 方法结合 `Array.prototype.indexOf()` 方法实现:
```javascript
const arr1 = [1, 2, 3, 4];
const arr2 = [2, 4];
const filteredArr1 = arr1.filter((item, index) => arr2.indexOf(item) === -1);
console.log(filteredArr1); // [1, 3]
```
上述代码中,`filter()` 方法会返回一个新数组,新数组的元素是原数组中满足条件的元素。这里的条件是,该元素在原数组中的内容不在 `arr2` 中出现过,即该元素不需要被删除。因此,我们使用 `indexOf()` 方法查找 `arr2` 中是否存在该元素,如果不存在则该元素满足条件。
最终,`filteredArr1` 数组中的元素就是需要保留的,即原数组中内容不与 `arr2` 相同的元素。
vue 获取数组的下标
要获取一个元素在数组中的下标,可以使用 JavaScript 中的 indexOf() 方法或 findIndex() 方法。
indexOf() 方法用于查找数组中给定元素的第一个匹配项,并返回其在数组中的索引。例如:
```
const items = ['apple', 'banana', 'orange'];
const index = items.indexOf('banana'); // 获取 'banana' 在数组中的索引,即 1
```
findIndex() 方法用于查找数组中满足条件的第一个元素,并返回其在数组中的索引。例如:
```
const items = [
{ name: 'apple', price: 1.5 },
{ name: 'banana', price: 2.0 },
{ name: 'orange', price: 1.0 },
];
const index = items.findIndex(item => item.name === 'banana'); // 获取 name 为 'banana' 的元素在数组中的索引,即 1
```
在这个例子中,我们定义了一个包含多个对象的数组 items,每个对象都有一个 name 属性。我们要查找 name 为 'banana' 的元素在数组中的索引,所以我们使用 findIndex() 方法来查找数组中第一个 name 属性等于 'banana' 的元素,并将其索引存储在 index 变量中。
阅读全文