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));
控制台运行结果如下图所示(转换前后的状态):