var arr =[1
,[2,
3],[
4,5]
];var newarr =
.concat.([
],arr)
;
var arr =[1
,[2,
[[3,
4],5
],6]
];var newarr = arr.
join
(',').
split
(','
);
解釋:利用join將陣列中所有元素放入乙個字串,再用split分割。
缺點:數字型別變成字串型別
var arr =[1
,[2,
[[3,
4],5
],6]
];var newarr =
;function fun
(arr)
else}}
fun(arr)
;
解釋:利用isarray判斷是否存在巢狀陣列,存在則遞迴,不存在則放入新的一維陣列中。
缺點:不優雅,以及可能存在記憶體溢位問題。
var arr =[1
,2,[
3,4,
[5,6
]]];
var newarr=arr.
flat
(infinity)
;
解釋:利用es6的flat與infinity關鍵字,一行**實現遞迴的功能。
缺點:需要瀏覽器支援es6,或者使用polyfill進行轉碼。
多維陣列變一維陣列
判斷是否是陣列 let isarr arr arr instanceof array 判斷是否一維陣列 let istdim arr arr.reduce o1,o2 o1 isarr o2 true 多維陣列變一維陣列function name return a console.log name ...
JS多維陣列轉一維陣列
const arr 1 2 3 4 5,6 function flat array else return flata console.log flat arr 1,2,3,4,5,6 const arr 1 2 3 4 5,6 function flat a else const flatarr ...
js 標準二維陣列變一維陣列的方法
利用es5的arr.reduce callback initialvalue 實現 var arr1 0,1 2,3 4,5 var arr2 arr1.reduce function a,b arr2 0,1,2,3,4,5 利用es6 var arr1 0,1 2,3 4,5 function ...