陣列中哪些常用方法會修改原陣列
一、不會改變原來陣列的有:
- concat()
concat() 方法用於連線兩個或多個字串。
該方法沒有改變原有字串,但是會返回連線兩個或多個字串新字串。
- every()
every() 方法用於檢測陣列所有元素是否都符合指定條件(通過函式提供)。
every() 方法使用指定函式檢測陣列中的所有元素:
- 如果陣列中檢測到有一個元素不滿足,則整個表示式返回false,且剩餘的元素不會再進行檢測。
- 如果所有元素都滿足條件,則返回 true。
- some()
some() 方法用於檢測陣列中的元素是否滿足指定條件(函式提供)。
some() 方法會依次執行陣列的每個元素:
- 如果有一個元素滿足條件,則表示式返回true
- 如果沒有滿足條件的元素,則返回false。
注意:some() 不會對空陣列進行檢測。
注意:some() 不會改變原始陣列。
- 如果有一個元素滿足條件,則表示式返回true
- filter()
filter() 方法建立一個新的陣列,新陣列中的元素是通過檢查指定陣列中符合條件的所有元素。
注意:filter() 不會對空陣列進行檢測。
注意:filter() 不會改變原始陣列。
- map()
map() 方法返回一個新陣列,陣列中的元素為原始陣列元素呼叫函式處理後的值。
map() 方法按照原始陣列元素順序依次處理元素。
注意:map() 不會對空陣列進行檢測。
注意:map() 不會改變原始陣列。
- slice()
slice() 方法可從已有的陣列中返回選定的元素。
slice()方法可提取字串的某個部分,並以新的字串返回被提取的部分。
注意:slice() 方法不會改變原始陣列。
二、會改變原來陣列的有:
- pop()
pop() 方法用於刪除陣列的最後一個元素並返回刪除的元素。
注意:此方法改變陣列的長度!
提示:移除陣列第一個元素,請使用shift()方法。
- push()
push() 方法可向陣列的末尾新增一個或多個元素,並返回新的長度。
注意:新元素將新增在陣列的末尾。
注意:此方法改變陣列的長度。
提示:在陣列起始位置新增元素請使用unshift()方法。
- shift()
shift() 方法用於把陣列的第一個元素從其中刪除,並返回第一個元素的值。
注意:此方法改變陣列的長度!
提示:移除陣列末尾的元素可以使用pop()方法。
- unshift()
unshift() 方法可向陣列的開頭新增一個或更多元素,並返回新的長度。
注意:該方法將改變陣列的數目。
提示:將新項新增到陣列末尾,請使用push()方法。
- reverse()
reverse() 方法用於顛倒陣列中元素的順序。
6.sort()
sort() 方法用於對陣列的元素進行排序。
排序順序可以是字母或數字,並按升序或降序。
預設排序順序為按字母升序。
注意:當數字是按字母順序排列時"40"將排在"5"前面。
使用數字排序,你必須通過一個函式作為引數來呼叫。
函式指定數字是按照升序還是降序排列。
這些說起來可能很難理解,你可以通過本頁底部例項進一步瞭解它。
注意:這種方法會改變原始陣列!。
7.splice()
splice() 方法用於新增或刪除陣列中的元素。
注意:這種方法會改變原始陣列。