JS數組方法——速查小本子

數組增刪改

  1. Array.of(...items)返回新數組 將參數中全部值做爲元素造成數組
  2. arr.push() 數組尾部添加,arr.pop() 尾部取出,arr.shift() 首端取出,arr.unshift() 首端插入
  3. arr.splice(pos,deleteCount,...item)返回被修改的元素,會改變原數組從pos開始刪除deleteCount個元素,並在當前位置插入items
  4. arr.slice(start,end)返回新數組,淺拷貝,將start到end(不包括end)的元素複製進去,並返回
  5. arr.concat(...items)返回新數組,複製當前數組的全部元素,並添加items的元素
  6. arr.copyWithin(pos[, start[, end]])淺拷貝,返回改變後的數組,複製從start到end(不包括end)的元素,到pos開始的索引
  7. arr.fill(value[, start[, end]])返回修改後的值,從start到end默認length,填充val

搜索元素

  1. arr.indexOf(item[,pos]) 從pos開始搜索item,搜索到返回索引,沒找到返回-1,默認所有查找。arr.lastIndexOf(item[,pos]),位置從後面開始計算
  2. arr.includes(val) 若是數組有val,返回true,不然false
  3. arr.find(callback(element[, index[, array]])[, thisArg]) 經過func過濾元素,返回使func爲true的第一個值。
  4. arr.findIndex(callback(element[, index[, array]])[, thisArg]) 相似find,返回索引,不是值,沒找到返回-1

遍歷元素

  1. arr.forEach(callback(currentValue [, index [, array]])[, thisArg]) 對每一個元素調用func,不返回任何值數組

  2. arr.entries/keys/values()返回新的數組迭代器對象,該對象包含數組中每一個索引的鍵/值對[key,val]/[key]/[values],可用next()遍歷,value()查看值函數

  3. arr.every(callback(element[,index[,array]])[, thisArg]))返回boolean,callback(element[,index[,array]])爲測試數組元素的函數,el爲測試當前值,index爲當前索引,array爲調用的數組自己。若是每次回調函數都返回true則函數返回true,不然false測試

  4. arr.some(callback(element[, index[, array]])[, thisArg])返回boolean,類every,只要一個經過測試則返回truethis

轉換數組

  1. arr.map(callback(currentValue[, index[, array]])[, thisArg]) 根據調用func的返回結果建立新數組prototype

  2. arr.filter(callback(element[, index[, array]])[, thisArg]) 返回使func爲true的所有值對象

  3. arr.sort([compareFunction]) 對數組進行原位(in-place)排序,而後返回,func參數arg1:第一個比較的元素,arg2:第二個比較的元素排序

  4. arr.reverse() 原位反轉數組,而後返回索引

  5. arr.join([separator]) 將數組轉換爲指定分隔符連成的字符串並返回,默認用','ci

  6. arr.reduce/reducnRight(callback(accumulator, currentValue[, index[, array]])[, initialValue])返回函數累計處理的結果 經過對每一個元素調用func,計算數組是的單個值,並在調用之間傳遞中間結果。accum累計器累計回調的返回值; 它是上一次調用回調時返回的累積值,或initialValue(初始accum的值,若是沒有則用數組第一個元素)。element

  7. Array.isArray(arr) 檢查arr是否爲數組

  8. Array.from(arrayLike[,mapFn[,this.Arg]]) 返回新數組,淺拷貝,將類數組對象或可迭代對象轉化爲數組,第二參數:用於對每一個元素進行處理,放入數組的是處理後的元素。第三參數:用於指定第二參數執行時的this對象

  9. arr.flat([depth])返回新數組,depth維數組轉一維

  10. arr.flatMap(callback(currentValue[, index[, array]])[, thisArg])) 對flat的轉換有回調函數的處理

  11. arr.toString(callback(currentValue[, index[, array]])[, thisArg])返回字符串,數組轉字符串

  12. arr.toLocaleString([locales[,options]])返回數組元素的字符串,locales爲帶有BCp 47語言標記的字符串或者字符串數組,options爲可配置對象,對於數字 Number.prototype.toLocaleString(),對於日期Date.prototype.toLocaleString()

屬性方法

  1. arr[Symbol.iterator]()默認與values()的返回值相同
  2. Array[Symbol.species]返回數組的構造函數

Array構造函數的方法

  1. Array.of(...items)
  2. Array.isArray(arr)
  3. Array.from(arrayLike[,mapFn[,this.Arg]])
  4. Array[Symbol.species]

會影響原數組自己的方法

  1. pop()
  2. push()
  3. shift()
  4. unshift()
  5. sort()
  6. reverse()
  7. splice()
  8. copyWithin()
  9. arr.fill()
相關文章
相關標籤/搜索