使用JavaScript在1个数组中查找常见元素 [英] Find common elements in 1 array using Javascript
本文介绍了使用JavaScript在1个数组中查找常见元素的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有这个:
var mergeUniqueItems = ["-JsDEcxz_ZSGFLKwd1QM",
"-JsJ2NXGDYKI6QRsuXVK",
"-JsJ2RK-kOG2eGcG04xF",
"-JsJ2RK-kOG2eGcG04xF",
"-JsJ2YLPiP6751zh8geS"]
我已经使用过:
var duplicateArray = [];
for (var i = 0; i < mergeUniqueItems.length; i ++){
for (var j = 1; j < mergeUniqueItems.length; j ++){
if (mergeUniqueItems[i] == mergeUniqueItems[j]){
duplicateArray.push(mergeUniqueItems[i]);
}
}
}
console.log(duplicateArray);
结果变成这样:
["-JsJ2NXGDYKI6QRsuXVK",
"-JsJ2RK-kOG2eGcG04xF",
"-JsJ2RK-kOG2eGcG04xF",
"-JsJ2RK-kOG2eGcG04xF",
"-JsJ2RK-kOG2eGcG04xF",
"-JsJ2YLPiP6751zh8geS"]
何时我的期望是1个数组中的重复项,如下所示:
When my expectation is duplicate items in 1 array like below:
["-JsJ2RK-kOG2eGcG04xF"]
如果存在多个重复值,则数组应如下所示:
If there are more than one duplicate value, array should be like this:
["-JsJ2RK-kOG2eGcG04xF", "another_duplicate_1", "another_duplicate_2", ...]
我真的不知道我的代码有什么问题,请帮忙。
I don't really know what's wrong with my code, please kindly help.
谢谢
推荐答案
开始 j
以 i + 1
的价格关闭,而不是 1
的价格,并检查以确保您没有已经添加了重复值。
Start j
off at i+1
instead of 1
, and check to make sure you've not already added the duplicate value.
for (var i = 0; i < mergeUniqueItems.length; i ++){
for (var j = i + 1; j < mergeUniqueItems.length; j ++){
if (mergeUniqueItems[i] == mergeUniqueItems[j]){
if (duplicateArray.indexOf(mergeUniqueItems[i]) < 0)
duplicateArray.push(mergeUniqueItems[i]);
break;
}
这篇关于使用JavaScript在1个数组中查找常见元素的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文