【发布时间】:2018-06-03 22:36:44
【问题描述】:
我有这段代码,我正在检查重复项,如果它是重复的,它具有 isDuplicate 布尔值,但我想扩展我的代码并比较另一个属性,即 colorId 并设置 isBigger 属性,以获得更大的属性:) 你有什么建议吗? 非常感谢
这是我的代码:
$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));
}
}
};
【问题讨论】:
标签: javascript angularjs sorting duplicates