3 回答

TA貢獻(xiàn)1775條經(jīng)驗(yàn) 獲得超8個(gè)贊
var dateMap = {};
for (i = 0; i < dbData.length; i++) {
let tmp_date_str = "";
let tmp_date = new Date(dbData[i].TIMESTAMP);
tmp_date_str += tmp_date.getFullYear();
tmp_date_str += "-";
if ((tmp_date.getMonth()+1) < 10) {
tmp_date_str += "0";
}
tmp_date_str += (tmp_date.getMonth()+1);
tmp_date_str += "-";
if (tmp_date.getDate() < 10) {
tmp_date_str += "0";
}
tmp_date_str += tmp_date.getDate();
// make it a map, and if value for this string already exists, do nothing
if (!dateMap[tmp_date_str]) {
dateMap[tmp_date_str] = true;
}
}
如果您需要將日期作為數(shù)組獲取,那就去做
var dates = Object.keys(dateMap)

TA貢獻(xiàn)2039條經(jīng)驗(yàn) 獲得超8個(gè)贊
您可以使用set來(lái)消除重復(fù):
const mySet= new Set(["one", "two", "three", "one"]);
mySet.has("one") // true
mySet.size === 3); // true
Set 構(gòu)造函數(shù)可以采用一組用于初始化集合的項(xiàng)目。

TA貢獻(xiàn)1859條經(jīng)驗(yàn) 獲得超6個(gè)贊
要檢查并刪除重復(fù)項(xiàng),您可以使用angular.equals:
var newArray = [];
angular.forEach($scope.dates, function(value, key) {
var exists = false;
angular.forEach(newArray, function(val2, key) {
if(angular.equals(value.date, val2.date)){ exists = true };
});
if(exists == false && value.dates != "") { newArray.push(value); }
});
$scope.dates = newArray;
添加回答
舉報(bào)