0%

自己动手实现系列 ---- Array.prototype.flat()函数

原理

将多层数组扁平化

实现

1
2
3
4
5
6
7
8
9
10
11
Array.prototype.myFlat = function() {
var arr = [];
this.forEach((item)=>{
if(Array.isArray(item)){
arr = arr.concat(item.myFlat()); // 如果是数组的话继续循环
}else{
arr.push(item)
}
})
return arr
};

还有另外一种实现方式,非常好用

1
2
3
4
5
Array.prototype.myFlat = function() {
return this.toString() // => "1,2,3,4"
.split(",") // => ["1", "2", "3", "4"]
.map(item => +item); // => [1, 2, 3, 4]
};
如果觉得不错请支持作者
------ 版权声明 ------

本文标题:自己动手实现系列 ---- Array.prototype.flat()函数

文章作者:

发布时间:2020年03月24日 - 13:40

最后更新:2020年04月02日 - 03:20

原始链接:https://blog.lifesli.com/2020/03/24/do-it-yourselfery-flat/

许可协议: 署名-非商业性使用-禁止演绎 4.0 国际 转载请保留原文链接及作者。