js常用删除数组方法

JavaScript029

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

     在我们日常生活中偶尔会遇到一些自己不知道如何解决的问题,比如js数组删除指定下标元素。那么我们应该怎样解决这种自己不知道如何js数组删除指定下标元素的情况呢?那么接下来就由我来介绍一下js数组删除指定下标元素的步骤吧。

      第一步:

      首先我们要先通过JavaScript代码来判断我们要删除的元素是否在这个数组里,我们可以通过以下的方法来实现这个功能

      第二步:

      通过上述的方法可以定义一个函数来判断是否指定元素在数组里,若在数组里则返回true,不在数组里则返回false,我们也可以通过indexOf方法来判断指定元素是否在数组里

      第三步:

      用indexOf方法需要注意两点,一是indexOf方法中的O必须要大写,二是这个方法在IE浏览器中的数组不存在这个方法

      第四步:

      找到要删除的元素的索引后通过以下的函数方法对这个元素进行删除,这个功能的实现主要通过splice()方法实现,splice()方法主要用于删除、替换、添加数组中的元素等等

      看了我的方法,现在你学会如何js数组删除指定下标元素了吗?学会了的话就快快把这个方法分享出去,让更多的人知道如何js数组删除指定下标元素。以上就是js数组删除指定下标元素的步骤。

      本文章基于Dell品牌、Windows10系统撰写的。

var a = new Array("a","b","cc","d3")//

删除a数组的cc元素

//jQuery.inArray()函数用于在数组中搜索指定的值,并返回其索引值。如果数组中不存在该值,则返回 -1。该函数属于全局jQuery对象。

jquery 1.2中添加的该静态方法var index = $.inArray("cc",a)

if(index>=0){//arrayObject.splice(index,howmany,item1,.....,itemX)

//参数描述//index  必需。

整数,规定添加/删除项目的位置,使用负数可从数组结尾处规定位置,//howmany 必需。要删除的项目数量。如果设置为 0,则不会删除项目。

//item1, ..., itemX 可选。向数组添加的新项目。

 a.splice(index,1)

 alert(a.totring())

}else{

 alert("error") return false

}