相关疑难解决方法(0)

生成空2D阵列的最佳方法

是否有更短,更好的方法来生成'n'长度的2D阵列?

var a = (function(){ var i=9, arr=[]; while(i--) arr.push([]); return arr })();

a // [ [],[],[],[],[],[],[],[],[] ]
Run Code Online (Sandbox Code Playgroud)

**老派短途**:

var a = (function(a){ while(a.push([]) < 9); return a})([]);
Run Code Online (Sandbox Code Playgroud)

更新 - 使用ES2015

Array(5).fill().map(a=>[]); // will create 5 Arrays in an Array
// or
Array.from({length:5}, a=>[])
Run Code Online (Sandbox Code Playgroud)

清空2D数组(相当于节省内存)

function make2dArray(len){
    var a = [];
    while(a.push([]) < len); 
    return a;
}

function empty2dArray(arr){
    for( var i = arr.length; i--; )
      arr[i].length = 0;
}

// lets make a 2D array of 3 items …
Run Code Online (Sandbox Code Playgroud)

javascript arrays

18
推荐指数
2
解决办法
2万
查看次数

标签 统计

arrays ×1

javascript ×1