gpt4 book ai didi

javascript - 仅使用下划线检查是否存在重复的数组对

转载 作者:行者123 更新时间:2023-12-02 06:36:43 25 4
gpt4 key购买 nike

我想知道如何检查数组中是否存在一对重复的值作为 javascript 中较大数组的一部分。您可以看到有一对重复的 [1,2] - 因此该函数应该只返回 true。即

var arr = [[1,2], [3,4], [5,6], [7,8], [9,10], [11,12], [13,14], [1,2]]

我试过使用这个逻辑,它给我一个干净的数组和一个“真”

var unique = [];
var done = []; var dup = false;
for(var x = 0; x < arr.length; x++) {
var myStr = arr[x].toString();

if(done.indexOf(myStr) != -1) {
// val already exist, ignore
dup = true;
continue;
}

done.push(myStr);
unique.push(arr[x]);
}

但我想知道使用 Underscore 是否有更优雅的东西?

最佳答案

最短的方法是使用 _.uniqJSON.stringify:

function unique(arr) {
return _.uniq(arr, JSON.stringify).length === arr.length;
}

但这不会短路,因此与您可以执行此操作的其他方法相比,它有点慢。 Tomalak's第二个功能应该更快。

关于javascript - 仅使用下划线检查是否存在重复的数组对,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16761949/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com