我正在尝试使我在此处的某个线程中找到的代码工作。



var values= [{lat: 12345, lng: 54321},{lat: 98765, lng: 54321}, {lat: 99999, lng: 111111} ]

let seen = new Set();
var hasDuplicates = values.some(function(currentObject) {
    return seen.size === seen.add(currentObject.lng).size;
});
console.log(hasDuplicates)





它说的是事实,但这不是因为它仅检查经度是否存在,而不是随纬度存在。

我怎样才能做到这一点?

最佳答案

一个简单的解决方案,将currentObject转换为字符串表示形式并将其用作Set值。

seen.add(currentObject.lat + " " + currentObject.lng)




var values= [{lat: 12345, lng: 54321},{lat: 12345, lng: 54321}, {lat: 99999, lng: 111111} ]

let seen = new Set();
var hasDuplicates = values.some(function(currentObject) {
    return seen.size === seen.add(currentObject.lat + " " + currentObject.lng).size;
});
console.log(hasDuplicates)

关于javascript - 检查重复的纬度和经度,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/43755851/

10-12 12:57