js刪除數(shù)組中指定元素的幾種方式
js刪除數(shù)組中某一項(xiàng)或幾項(xiàng)的幾種方法
一、刪除第一個(gè)元素
1、shift() 方法用于把數(shù)組的第一個(gè)元素從其中刪除,并返回第一個(gè)元素的值。
注意: 此方法改變數(shù)組的長度!
提示: 移除數(shù)組末尾的元素可以使用 pop() 方法。
let arr = [1,2,3,4,5] arr.shift() // 1 // arr => [2,3,4,5]
2、slice() 方法可從已有的數(shù)組中返回選定的元素。
slice() 方法可提取字符串的某個(gè)部分,并以新的字符串返回被提取的部分。
注意: slice() 方法不會(huì)改變?cè)紨?shù)組。
let arr = [1,2,3,4,5] let newArr = arr.slice(1) // arr => [1,2,3,4,5] // newArr => [2,3,4,5]
3、splice() 方法用于添加或刪除數(shù)組中的元素。
注意:這種方法會(huì)改變?cè)紨?shù)組。
返回值
如果刪除一個(gè)元素,則返回一個(gè)元素的數(shù)組。 如果未刪除任何元素,則返回空數(shù)組。
let arr = [1,2,3,4,5] let newArr = arr.splice(0, 1) // arr => [2,3,4,5] // newArr => [1]
二、刪除最后一個(gè)元素
1、pop() 方法用于刪除數(shù)組的最后一個(gè)元素并返回刪除的元素。
注意:此方法改變數(shù)組的長度!
提示: 移除數(shù)組第一個(gè)元素,請(qǐng)使用 shift() 方法。
let arr = [1,2,3,4,5] arr.pop() // 5 // arr => [1,2,3,4]
2、slice() 方法
let arr = [1,2,3,4,5] let newArr = arr.slice(0, arr.length - 1) // arr => [1,2,3,4,5] // newArr => [1,2,3,4]
3、 splice() 方法用于添加或刪除數(shù)組中的元素。
let arr = [1,2,3,4,5] let newArr = arr.splice(arr.length - 1, 1) // arr => [1,2,3,4] // newArr => [5]
三、刪除數(shù)組中某個(gè)指定下標(biāo)的元素
1、splice 刪除
let index = 3 let arr = [1,2,3,4,5] arr.splice(index, 1) // [4] // arr => [1,2,3,5]
2、for循環(huán)刪除
let index = 3, // 刪除的id
arr = [1,2,3,4,5],
arrLen = arr.length,
newArr = [];
for (let i = 0; i < arrLen; i++) {
if (i !== index) {
newArr.push(arr[i])
}
}
// arr => [1,2,3,4,5]
// newArr => [1,2,3,5]3、delete刪除
JavaScript提供了一個(gè)delete關(guān)鍵字用來刪除(清除)數(shù)組元素。
要注意的是,使用delete刪除元素之后數(shù)組長度不變,只是被刪除元素被置為empty了。
let index = 3 let arr = [1,2,3,4,5] delete arr[index] // arr = > [1, 2, 3, empty, 5]
四、刪除數(shù)組中某個(gè)指定元素
1、splice 刪除
let value = 'b',
arr = ['a','b','c','d']
arr.splice(arr.indexOf(value), 1) // ['b']
// arr => ['a','c','d']2、filter 刪除
var arr = ['a','b','c','d'],
value = 'b'
arr = arr.filter(item => item != value)
// arr => ['a','c','d']3、for 刪除
let value = 'b',
arr = ['a','b','c','d'],
arrLen = arr.length,
newArr = []
for (let i = 0; i < arrLen; i++) {
if (arr[i] !== value) {
newArr.push(arr[i])
}
}
// 其他forEach、map、for of循環(huán)同理4、Set 刪除
let arr = ['a','b','c','d'],
value = 'b'
let newSet = new Set(arr)
newSet.delete(value)
let newArr = [...newSet]
// newArr => ['a','c','d']總結(jié)
到此這篇關(guān)于js刪除數(shù)組中指定元素的文章就介紹到這了,更多相關(guān)js刪除數(shù)組指定元素內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
JavaScript中的this原理及6種常見使用場(chǎng)景詳解
這篇文章主要介紹了JavaScript中的this原理及6種常見使用場(chǎng)景詳解,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-02-02
詳解CommonJS和ES6模塊循環(huán)加載處理的區(qū)別
這篇文章主要介紹了詳解CommonJS和ES6模塊循環(huán)加載處理的區(qū)別,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2018-12-12
Bootstrap實(shí)現(xiàn)input控件失去焦點(diǎn)時(shí)驗(yàn)證
這篇文章主要介紹了Bootstrap實(shí)現(xiàn)input控件失去焦點(diǎn)時(shí)驗(yàn)證的相關(guān)資料,非常不錯(cuò),需要的朋友可以參考下,需要的朋友可以參考下2016-08-08
Webpack中css-loader和less-loader的使用教程
這篇文章主要介紹了關(guān)于Webpack中css-loader和less-loader的使用教程,文中通過示例代碼介紹的非常詳細(xì),相信對(duì)大家具有一定的參考價(jià)值,需要的朋友們下面來一起看看吧。2017-04-04
javascript實(shí)現(xiàn)在下拉列表中顯示多級(jí)樹形菜單的方法
這篇文章主要介紹了javascript實(shí)現(xiàn)在下拉列表中顯示多級(jí)樹形菜單的方法,涉及javascript屬性菜單的定義、構(gòu)造及遍歷等技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-08-08
JavaScript實(shí)現(xiàn)導(dǎo)入和導(dǎo)出Excel的示例詳解
在現(xiàn)代的Web應(yīng)用開發(fā)中,與Excel文件的導(dǎo)入和導(dǎo)出成為了一項(xiàng)常見而重要的任務(wù),本文主要介紹了如何在熟悉的電子表格?UI?中輕松導(dǎo)入?Excel?文件,需要的可以參考下2024-03-03
javascript實(shí)現(xiàn)禁止復(fù)制網(wǎng)頁內(nèi)容匯總
本文給大家匯總介紹了幾種使用javascript和CSS實(shí)現(xiàn)禁止復(fù)制頁面內(nèi)容的方法,非常的實(shí)用,有需要的小伙伴可以參考下。2015-12-12

