Her*_*rig 5 javascript arrays loops
我必须获取数组中多次存在的值的列表。这是当前的代码,但正如您所看到的,它太复杂了。
var arr = [1, 2, 3, 4, 2, 3];
var flag = {}
var exist2arr = [];
for(var i = 0; i < arr.length; i++){
for(var j = 0 ; j < arr.length; j ++){
if(i !=j && arr[i] == arr[j]){
if(!flag[arr[i]])
exist2arr.push(arr[i]);
flag[arr[i]] = 1;
}
}
}
console.log(exist2arr);Run Code Online (Sandbox Code Playgroud)
有没有其他方法(使用javascript内置函数的简单代码)来实现这一点?任何形式的帮助表示赞赏。
您可以根据第一个索引和当前索引不相等的值来过滤数组,然后通过Set
const arr = [1, 2, 3, 4, 2, 3, 2, 3, 2, 3, 2, 3]; // added in some extras
const filtered = arr.filter((v, i) => arr.indexOf(v) !== i)
const unique = new Set(filtered)
console.info(Array.from(unique)) // using Array.from so it can be loggedRun Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5901 次 |
| 最近记录: |