全年龄版
1
2
3
4
5
6
7
|
var natureGen = function(len){
var arr = Array(len)
for(i = 0; i < len; i++) {
arr[i] = i
}
return arr
}
|
ES5偷懒错误示范
1
2
3
4
5
6
|
var natureGen = function(len){
return Array(len).map(function(el, index){
return index
})
}
|
ES5偷懒正确姿势
1
2
3
4
5
6
7
8
|
var natureGen = function(len){
// {length:len}类数组提供给Array作为参数
// 相当于 Array([undefined, ...])
var arr = Array.apply(null, {length: len})
return arr.map(function(el, index){
return index
})
}
|
ES6/6+ Array.from
1
|
Array.from({len}).map((el, index) => index)
|
ES6/6+ Array.fill
1
|
Array(len).fill('随便').map((el, index) => index)
|
ES6/6+ 可不可以短一点
1
|
Array.from(Array(len).keys())
|
ES6/6+ 可不可以更短一点
还有这种操作?
奇技淫巧合集:https://www.zhihu.com/question/41493194