如何使用 JavaScript 过滤掉数组中的非唯一值?
在 JavaScript 中,数组是使用索引作为值的键的对象。在本文中,让我们看看如何过滤掉所有非唯一值,并获得所有唯一且不重复的元素。
方法:在唯一元素的数组中,第一次和最后一次出现的元素的索引必须相同,否则,如果它们不同,则确认该数组在同一数组中的某个其他索引处存在重复。所有非唯一值都应由filter()停止,输出应为 独特的价值观。
方法一:使用filter() 方法
filter()方法返回满足条件的数组元素,即唯一元素的第一次出现索引和最后一次出现索引必须相同。我们用 这 indexOf()方法来获取元素第一次出现的索引和 lastIndexOf()方法来获取元素的最后一次出现。
句法:
var newarr=initial_arr.filter((value ,index)=>{
conditions with return statement;
});
例子:
Javascript
Javascript
输出:
Before filtering non unique values: 1,2,2,3,4,5,6,6,7,8,8,8
After filtering non unique values: 1,3,4,5,7
方法2:使用相同的原理,但使用 for()循环。
在 for 循环中,我们只将唯一元素推入数组,如果它满足第一次出现索引和最后一次出现索引必须相同的条件。我们用 indexOf()方法获取元素的第一次出现的索引, lastIndexOf()方法获取元素的最后一次出现。
句法:
for (let i = start; condition to i;increment or decrement) {
instruction1;
instruction2;
instruction3;
.
.
.
};
例子:
Javascript
输出:
Before filtering non unique values: 1,2,2,3,4,5,6,6,7,8,8,8
After filtering non unique values: 1,3,4,5,7