国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 語言 > JavaScript > 正文

JS數組扁平化(flat)方法總結詳解

2024-05-06 15:37:33
字體:
來源:轉載
供稿:網友

需求:多維數組=>一維數組

let ary = [1, [2, [3, [4, 5]]], 6];let str = JSON.stringify(ary);

第0種處理:直接的調用

arr_flat = arr.flat(Infinity);

第一種處理

ary = str.replace(/(/[/]))/g, '').split(',');

第二種處理

str = str.replace(/(/[/]))/g, '');str = '[' + str + ']';ary = JSON.parse(str);

第三種處理:遞歸處理

let result = [];let fn = function(ary) {for(let i = 0; i < ary.length; i++) }{let item = ary[i];if (Array.isArray(ary[i])){fn(item);} else {result.push(item);}}}

第四種處理:用 reduce 實現數組的 flat 方法

function flatten(ary) {return ary.reduce((pre, cur) => {return pre.concat(Array.isArray(cur) ? flatten(cur) : cur);})}let ary = [1, 2, [3, 4], [5, [6, 7]]]console.log(ary.MyFlat(Infinity))

第五種處理:擴展運算符

while (ary.some(Array.isArray)) {ary = [].concat(...ary);}

這是一個比較實用而且很容易被問到的問題,歡迎大家交流補充。

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持錯新站長站。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

主站蜘蛛池模板: 贵港市| 开封市| 芷江| 出国| 梁河县| 崇阳县| 固安县| 泾源县| 平顶山市| 白河县| 湖州市| 大石桥市| 无锡市| 云阳县| 鄂伦春自治旗| 本溪| 白城市| 濮阳县| 柳江县| 建德市| 杨浦区| 淮安市| 大庆市| 抚州市| 嵊州市| 日土县| 云梦县| 深泽县| 楚雄市| 桐乡市| 黄浦区| 即墨市| 竹溪县| 长子县| 玉山县| 平湖市| 宜良县| 平利县| 平遥县| 三门县| 阿鲁科尔沁旗|