天天看點

Array常用的幾種方法Array常用的方法:

Array常用的方法:

  1. concat() 連接配接兩個或更多的數組,并傳回結果
  2. join(separator):将數組的元素組起一個字元串,以separator為分隔符,省略的話則用預設用逗号為分隔符,該方法隻接收一個參數:即分隔符。

    通過join()方法可以實作重複字元串,隻需傳入字元串以及重複的次數,就能傳回重複後的字元串

  3. push(): 可以接收任意數量的參數,把它們逐個添加到數組末尾,并傳回修改後數組的長度。
  4. pop():數組末尾移除最後一項,減少數組的 length 值,然後傳回移除的項。
  5. shift():删除原數組第一項,并傳回删除元素的值;如果數組為空則傳回undefined 。
  6. unshift():将參數添加到原數組開頭,并傳回數組的長度 。
  7. sort():按升序排列數組項——即最小的值位于最前面,最大的值排在最後面。
    Array常用的幾種方法Array常用的方法:
    為了解決上述問題,sort()方法可以接收一個比較函數作為參數,以便我們指定哪個值位于哪個值的前面。比較函數接收兩個參數,如果第一個參數應該位于第二個之前則傳回一個負數,如果兩個參數相等則傳回 0,如果第一個參數應該位于第二個之後則傳回一個正數。以下就是一個簡單的比較函數:
    Array常用的幾種方法Array常用的方法:
    如果需要通過比較函數産生降序排序的結果,隻要交換比較函數傳回的值即可:
    Array常用的幾種方法Array常用的方法:
  8. reverse():反轉數組項的順序。
    Array常用的幾種方法Array常用的方法:
    從上面測試結果可以發現:傳入的不是數組,則直接把參數添加到數組後面,如果傳入的是數組,則将數組中的各個項添加到數組中。但是如果傳入的是一個二維數組呢?
    Array常用的幾種方法Array常用的方法:
    上述代碼中,arrCopy2數組的第五項是一個包含兩項的數組,也就是說concat方法隻能将傳入數組中的每一項添加到數組中,如果傳入數組中有些項是數組,那麼也會把這一數組項當作一項添加到arrCopy2中。
  9. slice():傳回從原數組中指定開始下标到結束下标之間的項組成的新數組。slice()方法可以接受一或兩個參數,即要傳回項的起始和結束位置。在隻有一個參數的情況下, slice()方法傳回從該參數指定位置開始到目前數組末尾的所有項。如果有兩個參數,該方法傳回起始和結束位置之間的項——但不包括結束位置的項。
  10. splice():很強大的數組方法,它有很多種用法,可以實作删除、插入和替換。

    删除:可以删除任意數量的項,隻需指定 2 個參數:要删除的第一項的位置和要删除的項數。例如, splice(0,2)會删除數組中的前兩項。

    插入:可以向指定位置插入任意數量的項,隻需提供 3 個參數:起始位置、 0(要删除的項數)和要插入的項。例如,splice(2,0,4,6)會從目前數組的位置 2 開始插入4和6。

    替換:可以向指定位置插入任意數量的項,且同時删除任意數量的項,隻需指定 3 個參數:起始位置、要删除的項數和要插入的任意數量的項。插入的項數不必與删除的項數相等。例如,splice (2,1,4,6)會删除目前數組位置 2 的項,然後再從位置 2 開始插入4和6。

    splice()方法始終都會傳回一個數組,該數組中包含從原始數組中删除的項,如果沒有删除任何項,則傳回一個空數組。

  11. indexOf()和 lastIndexOf()

    indexOf():接收兩個參數:要查找的項和(可選的)表示查找起點位置的索引。其中, 從數組的開頭(位置 0)開始向後查找。

    lastIndexOf:接收兩個參數:要查找的項和(可選的)表示查找起點位置的索引。其中, 從數組的末尾開始向前查找。

    這兩個方法都傳回要查找的項在數組中的位置,或者在沒找到的情況下傳回-1。在比較第一個參數與數組中的每一項時,會使用全等操作符。

  12. forEach():對數組進行周遊循環,對數組中的每一項運作給定函數。這個方法沒有傳回值。參數都是function類型,預設有傳參,參數分别為:周遊的數組内容;第對應的數組索引,數組本身。
  13. map():指“映射”,對數組中的每一項運作給定函數,傳回每次函數調用的結果組成的數組。

    下面代碼利用map方法實作數組中每個數求平方。 對原數組沒有影響

    Array常用的幾種方法Array常用的方法:
  14. filter():“過濾”功能,數組中的每一項運作給定函數,傳回滿足過濾條件組成的數組。
    Array常用的幾種方法Array常用的方法:
  15. every():判斷數組中每一項都是否滿足條件,隻有所有項都滿足條件,才會傳回true。
    Array常用的幾種方法Array常用的方法:
  16. some():判斷數組中是否存在滿足條件的項,隻要有一項滿足條件,就會傳回true。
    Array常用的幾種方法Array常用的方法:
  17. reduce()和 reduceRight()

    這兩個方法都會實作疊代數組的所有項,然後建構一個最終傳回的值。reduce()方法從數組的第一項開始,逐個周遊到最後。而

    reduceRight()則從數組的最後一項開始,向前周遊到第一項。

    這兩個方法都接收兩個參數:一個在每一項上調用的函數和(可選的)作為歸并基礎的初始值。 傳給 reduce()和

    reduceRight()的函數接收 4

    個參數:前一個值、目前值、項的索引和數組對象。這個函數傳回的任何值都會作為第一個參數自動傳給下一項。第一次疊代發生在數組的第二項上,是以第一個參數是數組的第一項,第二個參數就是數組的第二項。

    下面代碼用reduce()實作數組求和,數組一開始加了一個初始值10。

    Array常用的幾種方法Array常用的方法: