javascript中的范围数组是否有一个很好的衬里,相当于python的list(range(m, n))
? ES6允许。这是迄今为止我提出的最好的方法:
[x for(x of (function*(){for(let i=0;i<100;i++) yield i})())]
答案 0 :(得分:5)
您可以使用Array.from
和箭头功能以获得更好的可读性:
Array.from({length: 4}, (_, n) => n) // = [0, 1, 2, 3]
Array.from({length: 5}, (_, n) => n+6) // = [6, 7, 8, 9, 10]
Array.from({length: 6}, (_, n) => n-3) // = [-3, -2, -1, 0, 1, 2]
答案 1 :(得分:0)
你可以这样做
var arr = []; while(arr[arr.length-1] !== end) arr.push(start++); // one-liner
将上述内容添加到函数中将导致
function createRange(start, end) {
var arr = []; while(arr[arr.length-1] !== end) arr.push(start++); // one-liner
return arr;
}