我有这个Js方法,但我不能实现一个启示循环
$scope.organizeByMonth = function () {
for (var i in $scope.incidents) {
var month = new Date($scope.incidents[i].upload_date).getMonth();
if (!monthIncidents[month]) {
monthIncidents[month] = {
name: $scope.months[month],
incidents: []
};
}
var incident = $scope.incidents[i];
incident.index = i;
monthIncidents[month].incidents.push(incident);
}
};
如何反向显示相同的对象:/
答案 0 :(得分:3)
您无法使用for in
语法执行反向循环 - 它也无关紧要。 JavaScript中的对象是无序的。
答案 1 :(得分:1)
最接近反向for..in ..循环的方法是获取对象键并向后迭代它们:
var object = { a: 1, b: 2, c: 3 };
var keys = Object.keys(object);
for(var i = keys.length - 1; i >= 0; i--) {
console.log(keys[i], object[keys[i]]);
}
答案 2 :(得分:0)
为什么要反转for循环?它仅用于显示目的吗?
如果是这样,我假设您正在使用ng-repeat来显示记录。如果是这种情况,您可以使用a custom reverse filter。
或者如果由于其他原因需要反转数组,只需在填充数组后使用Array.reverse