在JavaScript中,如果想生成一个大长度的数组,比如10000,或者100000。大致可以用以下几种不同的模式
LOOP方式
通过循环代码生成大数组里面的每一个元素是最简单的方法。常用的有for,while,do-while。基本的操作大同小异,先生成一个空数组或者指定长度的数组。然后采用push往空数组中添加元素或者通过下标修改指定长度的数组中的元素。大致代码如下
// 空数组模式
var start = new Date().getTime()
var array = []
for (let i=0; i<10000000; i++) {
array.push(i)
}
var end = new Date().getTime()
var cost = end - start
console.log('cost:', cost) // cost: 139
// 指定长度数组模式
var start = new Date().getTime()
var array = Array(10000000)
for (let i=0; i<10000000; i++) {
array[i] = i
}
var end = new Date().getTime()
var cost = end - start
console.log('cost:', cost) // cost: 45
从一个数组再生成另一个数组模式
这种方式本质还是一