算法:多层数组转化为一层 发表于 2020-01-14 | 分类于 算法 | | 阅读数 字数统计: 145 字 | 阅读时长 ≈ 1 分钟 题目给定一个数组,将多层数组转化为一层。 注意,数组元素不一定是数字,有可能为对象或字符串。 测试用例121. ['1',[2,3],-1] // ['1',2,3,-1]2. ['1',[2,3],{a:-1}] // ['1',2,3,{a:-1}] 解法思路 遍历数组,取出元素放入新数组,若元素为数组则递归取出 算法123456789101112131415/** * @param {array} arr * @param {array} res * @return {array} */var flatten = function (arr, res) { for(let i in arr) { if(arr[i] instanceof Array) { test(arr[i],res) } else { res.push(arr[i]); } } return res;} 打赏 微信支付 支付宝 -------------本文结束 感谢您的阅读-------------