📜  如何使用 JavaScript 过滤掉数组中的非唯一值?

📅  最后修改于: 2022-05-13 01:56:22.084000             🧑  作者: Mango

如何使用 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