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

資訊專欄INFORMATION COLUMN

lodash數組篇之2 compact()

robin / 1627人閱讀

摘要:創建一個新數組,包含原數組中所有的非假值元素。例如和都是被認為是假值。

創建一個新數組,包含原數組中所有的非假值元素。例如false, null, 0, "", undefined, 和 NaN 都是被認為是“假值”。

以下是自己實現的compact()

   compact:(array)=>{
        let result = []
        //判斷參數是否是數組 如果不是數組 直接返回一個空數組
        //也可以用es6提供的Array.isArray(array)來判斷 更簡潔
        if(!Object.prototype.toString.call(array)==="[object Array]") {
            return result
        }
        array.forEach(element => {
            if(element) {
                result.push(element)
            }
        });
        return result
    }

lodash的實現

    compact:(array)=>{
        var index = -1,
        length = array == null ? 0 : array.length,
        resIndex = 0,
        result = [];
  
    while (++index < length) {
      var value = array[index];
      if (value) {
        result[resIndex++] = value;
      }
    }
    return result;
  }

這樣寫的好處是 傳入一個字符串會返回一個數組 好像也沒其他作用,為什么不直接判斷是否是數組呢?

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

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

相關文章

  • lodash數組篇之1 chunk()

    摘要:最近打算去研究下的源碼,準備把大部分方法都實現一遍。先自己寫,然后在對照源碼。第一個是將數組拆分成多個長度的區塊,并將這些區塊組成一個新數組。 最近打算去研究下lodash的源碼,準備把大部分方法都實現一遍。先自己寫,然后在對照源碼。第一個是 chunk 將數組(array)拆分成多個 size 長度的區塊,并將這些區塊組成一個新數組。 如果array 無法被分割成全部等長的區塊,那么...

    cangck_X 評論0 收藏0
  • lodash數組篇之3 concat( )

    摘要:是一個包含了所有參數的類數組對象,比如說第一個參數可以通過獲取。可能是和一樣的原因,由于箭頭函數的原因,指向了父級作用域。參數搭配的變量是一個數組,該變量將多余的參數放入數組中。 創建一個新數組,將array與任何數組 或 值連接在一起 自行實現 concat:function(){ let length = arguments.length let re...

    韓冰 評論0 收藏0
  • Lodash源碼講解-compact函數

    摘要:首先我們先說一下這個函數的作用,這個函數接收一個數組作為參數然后將數組中所有通過布爾轉換可以變為的值去除從而生成一個新的數組。 原文首發于Lodash源碼講解 這是我們閱讀Lodash源碼的第3篇博客,在這篇文章里我們來學習一下Lodash的compact方法。 compact函數內部沒有依賴別的函數,讓我們先來看一下compact函數的源碼。 /** * Creates an ar...

    glumes 評論0 收藏0
  • lodash源碼分析之compact中的遍歷

    摘要:到這里,源碼分析完了。但是,有兩個致命的特性的遍歷不能保證順序會遍歷所有可枚舉屬性,包括繼承的屬性。的遍歷順序依賴于執行環境,不同執行環境的實現方式可能會不一樣。 小時候,鄉愁是一枚小小的郵票, 我在這頭, 母親在那頭。 長大后,鄉愁是一張窄窄的船票, 我在這頭, 新娘在那頭。 后來啊, 鄉愁是一方矮矮的墳墓, 我在外頭, 母親在里頭。 而現在, 鄉愁是一灣淺淺的海峽, 我在這頭, 大...

    dmlllll 評論0 收藏0
  • Lodash學習筆記 - compact函數

    摘要:文檔地址中文文檔英文文檔源碼地址創建一個新數組,包含原數組中所有的非假值元素。例如和都是被認為是假值。下面對比一下兩者效率,如下圖傳送門可以看到使用更快,如果沒有兼容性需求,還是使用原生函數比較好。 百忙之中(閑來無事)想抽點時間好好讀一下源碼,于是就選了Lodash來寫一個系列罷。讀源碼順序就按照loadsh文檔順序來。 文檔地址:中文文檔?? 英文文檔源碼地址:gayhub ...

    habren 評論0 收藏0

發表評論

0條評論

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