UNPKG

code2021-l

Version:

前端自定义工具

37 lines (36 loc) 1.08 kB
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>数组扁平化</title> </head> <body> <!-- 数组扁平化: 取出嵌套数组(多维)中的所有元素放到一个新数组(一维)中 如: [1, [3, [2, 4]]] ==> [1, 3, 2, 4] --> <!-- <script src="../node_modules/atguigu-utils/dist/atguigu-utils.js"></script> --> <script src="../dist/190719-utils.js"></script> <script> function flatten2(array) { let arr = [].concat(...array) while(arr.some(item => Array.isArray(item))) { // arr中有元素是数组 arr = [].concat(...arr) } return arr } /* [1, 3, [2, 4]] */ </script> <script> // [1] ---> [1, 3, 2, 4] // [3, [2, 4]] --> [3] --> [3, 2, 4] // [2, 4] --> [2, 4] console.log(aUtils.flatten1([1, [3, [2, 4]]])) console.log(aUtils.flatten2([1, [3, [2, 4]]])) </script> </body> </html>