博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Array flat的实现
阅读量:5973 次
发布时间:2019-06-19

本文共 998 字,大约阅读时间需要 3 分钟。

1 if (!Array.prototype.flat) { 2     Array.prototype.flat = function (num = 1) { 3         if (!Number(num) || Number(num) < 0) { 4             return this; 5         } 6         var arr = [] 7         this.forEach((item) => { 8             if (Array.isArray(item)) { 9                 arr = arr.concat(item.flat(--num))10             } else {11                 arr.push(item)12             }13         })14         return arr15     }16 }

测试用例

1 const arr = [1, [2, [3, 'a', [4]]]] 2  3 console.log(arr.flat('dsdsadf'));  // [1, [2, [3, 'a', [4]]]] 4 console.log(arr.flat(-32)); // [1, [2, [3, 'a', [4]]]] 5 console.log(arr.flat(0));   // [1, [2, [3, 'a', [4]]]] 6 console.log(arr.flat('1'));   // [1, 2, [3, 'a', [4]]] 7 console.log(arr.flat('2'));    // [1, 2, 3, 'a', [4]] 8 console.log(arr.flat(3));       // [1, 2, 3, 'a', 4] 9 console.log(arr.flat(Infinity));     // [1, 2, 3, 'a', 4]10 console.log(arr.flat('Infinity'));   // [1, 2, 3, 'a', 4]

 

转载于:https://www.cnblogs.com/taxi/p/9989613.html

你可能感兴趣的文章
SQL Server遗失管理权限账号密码怎么办?
查看>>
C#处理Exception的常用方法总结
查看>>
写文件的工具类,输出有格式的文件(txt、json/csv)
查看>>
自定义spring参数注解 - 打破@RequestBody单体限制
查看>>
Hadoop生态圈-Hive的自定义函数之UDF(User-Defined-Function)
查看>>
MongoDB基础入门
查看>>
ASP.NET Core 2 学习笔记(三)中间件
查看>>
SpringMVC Controller介绍及常用注解
查看>>
056 Java搭建kafka环境
查看>>
Linux Namespace : Network
查看>>
sklearn word2vec 实践
查看>>
Go中string转[]byte的陷阱
查看>>
Android 自定义AlertDialog的写法和弹出软键盘和覆盖状态栏
查看>>
SpringBoot------自定义拦截器
查看>>
Python | 一行命令生成动态二维码
查看>>
django学习--1
查看>>
即将上线的Hive服务器面临的一系列填坑笔记
查看>>
转:Mosquitto用户认证配置
查看>>
SpringBoot上传文件到本服务器 目录与jar包同级
查看>>
python开发_difflib字符串比较
查看>>