我正在使用JS库Underscore,特别是使用和库调用。我想知道是否有任何可能的方法来获得迭代器委托中的值的索引
_.sortBy([1, 4, 2, 66, 444, 9], function(num){
/*It'd be great to have access to the index in here */
return Math.sin(num);
});
发布于 2012-08-29 22:14:49
索引实际上是可用的,比如;
_.sortBy([1, 4, 2, 66, 444, 9], function(num, index){ });
发布于 2012-08-29 22:14:52
您可以通过向迭代器function
添加另一个参数来获取当前迭代的索引,例如
_.each(['foo', 'bar', 'baz'], function (val, i) {
console.log(i + ": " + val); // 0: foo, 1: bar, 2: baz
});
发布于 2014-03-13 15:32:18
如果您更愿意转换数组,那么下划线的map
函数的iterator
参数也会作为第二个参数传递给索引。所以:
_.map([1, 4, 2, 66, 444, 9], function(value, index){ return index + ':' + value; });
..。返回:
["0:1", "1:4", "2:2", "3:66", "4:444", "5:9"]
https://stackoverflow.com/questions/12179855
复制相似问题