-
www说
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; }}如果您需要将日期作为数组获取,那就去做 var dates = Object.keys(dateMap)
-
largeQ
您可以使用set来消除重复:const mySet= new Set(["one", "two", "three", "one"]);mySet.has("one") // true mySet.size === 3); // trueSet 构造函数可以采用一组用于初始化集合的项目。
-
BIG阳
要检查并删除重复项,您可以使用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;