Array 的一些常用 API
生活随笔
收集整理的這篇文章主要介紹了
Array 的一些常用 API
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
unshift、push、shift、pop
- 這4個方法都會改變原數組
- unshift() 從前面添加元素,push() 從后面追加元素,返回數組長度
- shift() 刪除第0個元素,pop() 刪除最后一個元素,返回被刪除的元素
slice
- 不改變原數組
- slice(m, n)返回原數組索引m(包含)到n(不包含)的元素數組。不傳參數默認全部截取,只傳一個參數,從該位置截取到末位。類似于String.prototype.substring
splice
- 改變原數組。
- splice(m,n,e1,e2,e3) 從索引m(包括)到n(不包括)的元素刪除數組,再在該位置處添加e1,e2,e3。若n傳入0,則只增加;若只傳m和n,則只刪除;若只傳m,則從m位置刪除到末位。放回刪除元素數組
concat
- 拼接,不改變原數組
of 和 from
- of()類似于new Array(),但后者如果傳入一個參數,則是設置數組長度。
- from() 把偽數組轉換為真數組,類似于[].slice.call()(或者寫成Array.prototype.slice.call())
- 偽數組有DOM集、arguments、{0: 'zero', 1: 'one', length: 2}
判斷數組的方法有
- xx instanceof Array
- Array.isArray()
- Object.prototype.toString.call() === '[object Array]'
這里補充一點判斷類型的技巧:
-
typeof操作符可以判斷出number、boolean、string、function和undefined,而不能判斷處具體的Object類型。
- 判斷Array要使用Array.isArray(arr);
- 判斷null請使用myVar === null;
- 判斷某個全局變量是否存在用typeof window.myVar === 'undefined';
- 函數內部判斷某個變量是否存在用typeof myVar === 'undefined'
- 不必把任意類型轉換為boolean再判斷,因為可以直接寫if (myVar) {...},如果需要轉換可以用 !!myVar
- 不要使用new Number()、new Boolean()、new String() 創建包裝對象;
- 用parseInt()或parseFloat()來轉換任意類型為Number;用String()來轉換任意類型為String,或者直接調用某個對象的toString()方法;
indexOf 和 includes
- indexOf() 返回索引,不存在就返回 -1。inclues()返回布爾值。
- NaN 不能通過indexOf()判斷,它是通過“===”比較的。
filter、find 和 findIndex
- filter() 返回數組。find() 返回值,不存在就返回 undefined。 findIndex() 返回第一個匹配到的索引,不存在就返回 -1。
some 和 every
- 返回布爾值
- some()用于檢測數組中的元素是否有滿足指定條件的;every()用于檢測數組中所有元素是否都符合指定條件。
- 不對空數組進行檢測,不改變原數組
map 和 forEach
- map() 對數組中的每個元素進行處理,得到新的數組,不改變原數組
- forEach() 相當于 for 循環,返回 undefined,不改變原數組
reduce
- reduce((accumulator, currentValue, currentIndex, array)=>{}, initValue)
- 第一個參數是迭代器函數,函數的作用是對數組中從左到右的每一個元素進行處理。第二個可選參數是累加器的初始值。沒有時,累加器第一次的值為currentValue。
- accumulator 累加器,即函數上一次調用的返回值。第一次的時候為 initialValue || arr[0]
- currentValue 數組中函數正在處理的的值,第一次的時候是 initialValue || arr[1]
- currentIndex 數組中函數正在處理的的索引
- array 函數調用的數組
當然累乘或者做其他業務也是可以的。
總結
以上是生活随笔為你收集整理的Array 的一些常用 API的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: CLIENT系列、OFFSET系列、SC
- 下一篇: Software License Man