Ich habe diesen Code, wo ich auf Duplikate prüfen, hat esDuplicate boolean, wenn es doppelt ist, aber ich möchte meinen Code zu erweitern und einen anderen zu vergleichen Eigenschaft, die Nummer ist und setBigger-Eigenschaft, für die größere :) Haben Sie Anregungen? vielen DankWenn JSON-Attribut Wert ist doppelt, vergleichen Sie seine andere Zahl Eigenschaft und setzen Attribut biggerDuplicate
hier ist mein Code:
$scope.verifyDuplicate = function() {
var names = [{
"order": 1,
"name": "a",
"shortName": "a",
"isDuplicate": false,
"categoryId": 15070,
"colorId": 50
}, {
"order": 2,
"name": "s",
"shortName": "s",
"categoryId": 15071,
"colorId": 51
}, {
"order": 3,
"name": "h",
"shortName": "g",
"focused": 1513262627570,
"isDuplicate": true,
"categoryId": 15074,
"colorId": 54
}, {
"order": 4,
"name": "h",
"shortName": "h",
"isDuplicate": true,
"categoryId": 15075,
"colorId": 59
}];
var sorted, i;
sorted = names.concat().sort(function(a, b) {
if (a.name > b.name)
return 1;
if (a.name < b.name)
return -1;
return 0;
});
for (i = 0; i < names.length; i++) {
if (sorted[i].name !== '') {
sorted[i].isDuplicate = ((sorted[i - 1] && sorted[i - 1].name === sorted[i].name)) || ((sorted[i + 1] && sorted[i + 1].name === sorted[i].name));
}
}
};
Charlietfl: danke, aber Object.values funktioniert nicht auf IE:/ –
kann verwenden ein 'für in 'Schleife stattdessen, oder suchen Sie nach einem Polyfill – charlietfl