javascript 将多维数组转换为一维数组

时间:2023-03-08 18:44:03
javascript 将多维数组转换为一维数组
    /**
* 2013年9月去面试的时候,有面试过这样子一道题目:
* 题目是这样子的:将一个多维数组转换成一维数组并返回该数组,类似
* [1,2,3,[4,5,6,[7,8]],9]转换后为:[1,2,3,4,5,6,7,8,9]
* 之前比较取巧,用concat函数直接转换,昨日突然想到这道题目,就想好好的做这样子一道题目啦
* */
var arr = [1,2,3,[4,5,6,[7,8]],9];
var newarr=[];
function multiToSingle(arr) {
for(var k in arr)
{
if( arr[k] instanceof Array) {
multiToSingle(arr[k]);
}else {
newarr.push(arr[k]);
}
}
return newarr;
}
console.log(arr);
console.log(multiToSingle(arr));
控制台运行结果如下图所示(转换前后的状态):
javascript 将多维数组转换为一维数组