js常用删除数组方法

JavaScript020

js常用删除数组方法,第1张

下面三种都会影响原数组,最后一项不影响原数组:

opop()

oshift()

osplice()

oslice()

1、pop()

pop() 方法用于删除数组的最后一项,同时减少数组的length 值,返回被删除的项

let colors = ["red", "green"]

let item = colors.pop()// 取得最后一项

console.log(item) // green

console.log(colors.length) // 1

2、shift()

shift()方法用于删除数组的第一项,同时减少数组的length 值,返回被删除的项

let colors = ["red", "green"]

let item = colors.shift()// 取得第一项

console.log(item) // red

console.log(colors.length) // 1

3、splice()

传入两个参数,分别是开始位置,删除元素的数量,返回包含删除元素的数组

let colors = ["red", "green", "blue"]

let removed = colors.splice(0,1)// 删除第一项

console.log(colors)// green,blue

console.log(removed)// red,只有一个元素的数组

4、slice()

slice() 用于创建一个包含原有数组中一个或多个元素的新数组,不会影响原始数组

let colors = ["red", "green", "blue", "yellow", "purple"]

let colors2 = colors.slice(1)

let colors3 = colors.slice(1, 4)

console.log(colors) // red,green,blue,yellow,purple

concole.log(colors2)// green,blue,yellow,purple

concole.log(colors3)// green,blue,yellow

本节的内容,通过一个例子,教大家删除数组中某一个元素的方法。

1,html部分

复制代码代码示例:

<input type="button" value="删除数组i位置的元素" onclick="arrayRemove()"/>

2,js代码部分

复制代码代码示例:

<script>

/**

* 删除数组中某个元素

* by www.jbxue.com

*/

function arrayRemove()

{

//初始化数组

var array = new Array()

for(var i=0i<10i++)

{

array.push(i+"name")

}

//检测要删除的元素(删除元素值为:7name)

for(var i=0i<array.lengthi++)

{

if(array[i] == "7name")

{

array = removeElement(i,array)//删除方法

}

}

for(var i=0i<array.lengthi++)

{

alert(array[i])

}

}

function removeElement(index,array)

{

if(index>=0 &&index<array.length)

{

for(var i=indexi<array.lengthi++)

{

array[i] = array[i+1]

}

array.length = array.length-1

}

return array

}

</script>

无法删除,但是可以替换来解决此问题。

如下参考:

1.indexOf()方法可以返回要查找元素的索引值,如果没有找到则返回-1,创建一个新的HTML文档用于加载度JS。

2.Vararr=['apple','banana','pear','orange']。

3.定义一个带有两个参数的函数,STR参数表示:指定要删除的元素,arr参数表示:被删除元素的数组。

4.定义函数体,样本代码:varindex=arr.indexOf(STR)。

5.调用函数delOne(),示例代码:delOne('pear',arr)。