我很好奇我是否可以使用下划线来构建虚拟数据,如下所示:
var things = [];
for (var i = 10; i--; ) {
var thing = { id: i };
things.push( thing )
}
这可能是下划线吗?是否有一些函数可以传递一个total和一个对象并返回一个数组?
答案 0 :(得分:3)
您可以使用_.times
:
次
_.times(n, iterator, [context])
调用给定的迭代器函数 n 次。使用索引参数调用迭代器的每次调用。生成返回值的数组。
所以:
var things = _(10).times(function(i) { return { id: i + 1 } });
或者如果您需要它们与for
循环的顺序相同:
var things = _(10).times(function(i) { return { id: i + 1 } })
.reverse();