我正在尝试使用我在某个帖子中找到的代码。
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)
它说这是真的,但这不是因为它只是检查经度是否存在于自身而不是纬度。
我该怎么做?
答案 0 :(得分:1)
简单的解决方案,将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)