我想运行一个反向for循环,每个项目作为参数传递给一个函数。
我可以使用underscore
。
var myItems = [1,2,3,4,5];
_.each(myItems, print); //It calls print in sequential order but I want reverse order
function print(value) {
value = value + 1;
// Some other modifications
console.log(value);
}
现在,我需要做同样的事情,但我想运行反向循环。我知道我可以写这样的循环
for (var i = myItems.length - 1; i >= 0; i--) { ... }
我正在寻找简洁的代码......像_.reverseLoop
或myItems.reverse
这样的东西。
underscore
或Array.prototype
中是否还有其他API可以反向运行循环并为每个项执行回调?
答案 0 :(得分:5)
reverse()
方法将数组反转到位。第一个数组 元素成为最后一个,最后一个成为第一个。
所以你可以反转你的数组并使用:
_.each(myItems.reverse(), print)
或者
_.each(myItems.slice().reverse(), print)
答案 1 :(得分:0)