一、前言
剛剛在使用splice()方法,發現這個方法返回的是刪除後的陣列元素,如果要獲取刪除指定元素後的陣列,直接呼叫原來的陣列即可!因為splice()會改變原來陣列!之前對splice()方法一直不熟悉,寫個隨筆記錄一下。
官方說明:
二、定義和用法
splice() 方法向/從陣列中新增/刪除專案,然後返回被刪除的專案。
注意:該方法會改變原始陣列。
三、語法
arrayobject.splice(index,howmany,item1,.....,itemx)
引數描述
index
必需。整數,規定新增/刪除專案的位置,使用負數可從陣列結尾處規定位置
howmany
必需。要刪除的專案數量。如果設定為 0,則不會刪除專案。
item1...itemx
可選。向陣列新增的新專案。
例子1:
var arr = [1,2,3,4]console.log(arr.splice(1,1));//[2]
console.log(arr);//[1,3,4]
結果:
[2] [1,3,4]
解析:splice()刪除指定元素後返回被刪除的元素。而該方法作用在arr陣列上,所以原來的陣列也被改變,變成[1,3,4].我們可以根據需要選擇相應的結果.
最後附上和splice相似的方法:slice
定義:slice() 方法可從已有的陣列中返回選定的元素。
使用方法: arr.slice(start,end); //start為初始位置,end為結尾位置,返回的結果是從start到end(不取)的新陣列
arr.slice(start); //選取從start開始直至最後乙個元素
例子:
var arr1 = [1,2,3,4];console.log(arr1.slice(1)); //[2, 3, 4]
console.log(arr1.slice(1,2));//[2]
console.log(arr1);//[1,2,3,4]
解析: arr1.slice(1)沒有指定結尾位置,則預設選取至最後乙個元素(注:最後乙個元素會被選)
arr1.slice(1,2) 指定從1開始選取,到2結束,但是不選擇2
和splice()不一樣,slice()執行後原陣列並未發生改變
js中splice方法和slice方法詳解
一 slice 擷取陣列 返回擷取的新陣列 不改變原始陣列 slice start,end 引數 start 開始位置的索引 end 結束位置的索引 但不包含該索引位置的元素 let arr 1,2,3,4,5 let newarr arr.slice 1,3 console.log arr 輸出 ...
關於js中的 splice 和slice 例項
關於 js中的 splice 和slice slice 方法可提取字串的某個部分,並以新的字串返回被提取的部分 var str 012345678 alert str.slice 0 相當於複製字串 012345678 alert str.slice 2,5 234 alert str.slice ...
JS陣列中的splice和slice方法的不同
這裡介紹一下splice splice 函式用於從當前陣列中移除一部分連續的元素。如有必要,還可以在所移除元素的位置上插入乙個或多個新的元素。該函式以陣列形式返回從當前陣列中被移除的元素。選取的是索引及長度 返回的是選中的資料,原陣列為剩下的資料 該函式屬於array物件,ie 5.5 firefo...