簡單的 JS 陣列 method 整理


Posted by backas36 on 2021-11-26

有次面談中有被問到關於 JavaScript 陣列方法的回傳值,這次就來簡單複習一下吧。

會改到原陣列的方法

  • push 在陣列的尾巴加入新元素,回傳陣列的 length
  • unshift 在陣列的開頭加入新元素,回傳陣列的 length
  • pop 拿掉陣列的最後一個元素,回傳被拿掉的元素,如果是空陣列會回傳 undefined。
  • shift 移除陣列第一個元素,回傳被拿掉的元素,如果是空陣列會回傳 undefined。
  • splice 可以拿來刪除元素或加入新元素,回傳被刪除的元素陣列。
  • reverse 反轉並回傳反轉後的陣列
  • sort 對陣列所有元素做排序,並回傳此排序後的陣列
  • fill 將陣列元素改為某個靜態的值,並回傳更改後的陣列

forEach 為遍歷陣列的方法,回傳 undefined

會回傳一個新陣列的方法

map 也是會遍歷陣列所有元素一遍的方法,但是會回傳一個新的陣列。

  • filter 透過 callback,來篩選元素,回傳新陣列。
  • slice 會回傳新陣列,可以拿來拷貝陣列。
  • concat 合併一個或多個陣列,並回傳新陣列。

其他 methods

  • indexOf 給一個特定的值,回傳第一個在陣列被找到『這個值』的 index,找不到就回傳 -1
  • find 回傳第一個滿足條件的元素的值,找不到就回傳 undefined
  • findIndex 前面兩個的結合,也就是給定一個 callback,callback 為描述滿足的條件,找到就返回 index,找不到會回傳 -1
  • includes 判斷陣列是否包含特定的元素,回傳布林值。
  • join 將陣列所有元素合併成一個字串,回傳此字串
  • reduce 比較難以解釋,總之就是利用 accumulator,來反應 currentValue,並回傳單一值,這個值可以是 number, string, boolean, object, array。

#js #Array







Related Posts

JS30 Day 23 筆記

JS30 Day 23 筆記

為狀態機各個狀態加上名稱吧

為狀態機各個狀態加上名稱吧

[ 筆記 ] 交換資料 - XMLHttpRequest、CORS、JSONP

[ 筆記 ] 交換資料 - XMLHttpRequest、CORS、JSONP


Comments