国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

js數組的扁平化

jemygraw / 1606人閱讀

摘要:數組扁平化方法遞歸循環數組元素,如果還是一個數組,就遞歸調用該方法注意和方法的返回值不同方法使用來簡化方法的代碼方法方法轉成字符串方法把字符串切割成數組字符串拼接方法方法則當其中一個返回,則最終結果為,相當于邏輯運算符。

數組扁平化
const a = [[1], [3, [4, 5, [6, 7]]], [8], [9, [2, 10]]]
方法1:遞歸

循環數組元素,如果還是一個數組,就遞歸調用該方法

function flatten1(arr){
    let res = [];
    for(var i=0;i
方法2:

使用reduce來簡化方法1的代碼:

function flatten2(arr){
    return arr.reduce((prev, cur) => prev.concat(Array.isArray(cur) ? flatten2(cur) : cur),[])   
}
方法3:

toString方法轉成字符串,split方法把字符串切割成數組,字符串拼接方法

function flatten3(arr){
    return arr.toString().split(",").map(item=> +item)
}
方法4:

some則當其中一個返回true,則最終結果為true, 相當于邏輯運算符||。

function flatten4(arr){
    while(arr.some(item => Array.isArray(item))){
        arr = [].concat(...arr);
    }
    return arr;
}
方法5:

every方法表示當數組每個元素在判定函數中都返回true,則最終結果為true,相當于邏輯運算符 &&

function flatten5(arr) {
    while (!arr.every(item => typeof item === "number" && !isNaN(item))) {
        arr = [].concat(...arr);
        console.log(arr);
    }
    return arr;
}
console.log(...a)

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/99016.html

相關文章

  • JS數組平化去并除其中重復部分數據,最終得到一個升序且不重復數組

    摘要:題目已知如下數組編寫一個程序將數組扁平化去并除其中重復部分數據,最終得到一個升序且不重復的數組實現數組扁平化去重排序解析數組扁平化判斷數組子元素是否為數組是的話進行遞歸否則把子元素變為數組的執行結果為的執行結果為數組去重通過實現 題目: 已知如下數組:var arr = [ [1, 2, 2], [3, 4, 5, 5], [6, 7, 8, 9, [11, 12, [12, 13, ...

    godruoyi 評論0 收藏0
  • JS數組專題1?? ? 數組平化

    一、什么是數組扁平化 扁平化,顧名思義就是減少復雜性裝飾,使其事物本身更簡潔、簡單,突出主題。 數組扁平化,對著上面意思套也知道了,就是將一個復雜的嵌套多層的數組,一層一層的轉化為層級較少或者只有一層的數組。 Ps: flatten 可以使數組扁平化,效果就會如下: const arr = [1, [2, [3, 4]]]; console.log(flatten(arr)); // [1, ...

    lieeps 評論0 收藏0
  • 展示JS前端面試數組平化手寫flat函數

      我們現在來說說怎么寫一下數組扁平化flat(),怎么樣?簡單說題目就是數組扁平化(也可以叫做手動封裝flat()方法),如何寫好那?  按照不同的星級進行打分: 五星打分制  滿分: ?????  題目實現扁平化的方法 封裝 flatten  題目描述:  有多級嵌套數組 :[1, [2, [3, [4, 5]]], 6]將其扁平化處理 輸出:[1,2,3,4,5,6]  什么是扁平化  定義...

    3403771864 評論0 收藏0
  • JS專題之數組展開

    摘要:根據需求的特點,數組展開需要進行迭代和遞歸。回答文章開頭的問題將多重數組轉化成單層數組的過程就是數組展開,也叫作數組扁平化一循環加遞歸最簡單的思路循環中判斷,如果子元素是數組則遞歸。 前言 首先什么是數組展開? 假如現在有這樣一個需求:將后臺的一個多重 List 數據,展開成一個 List 后,并去重后排序; [a, b, [c, d], [[d],e], f] => [a, b, ...

    boredream 評論0 收藏0

發表評論

0條評論

最新活動
閱讀需要支付1元查看
<