Javascript删除数组中某一项或几项的几种方法

45次阅读

共计 758 个字符,预计需要花费 2 分钟才能阅读完成。

1. splice

Js 中的 splice 方法

splice(index,len,[item])    注释:该方法会改变原始数组。

splice有 3 个参数,它也可以用来 替换 / 删除 / 添加 数组内某一个或者几个值

index: 数组开始下标        len: 替换 / 删除的长度       item: 替换的值,删除操作的话 item为空

如:

arr = ['a','b','c','d']

1.1 删除

删除 —-  item 不设置

// 删除起始下标为 1,长度为 1 的一个值,len 设置的 1,如果为 0,则数组不变

arr.splice(1,1)   //['a','c','d']         
// 删除起始下标为 1,长度为 2 的一个值,len 设置的 2

arr.splice(1,2)  //['a','d']          

1.2 替换

替换 —- item 为替换的值

// 替换起始下标为 1,长度为 1 的一个值为‘ttt’,len 设置的 1

arr.splice(1,1,'ttt')        //['a','ttt','c','d']         
// 替换起始下标为 1,长度为 2 的两个值为‘ttt’,len 设置的 1

arr.splice(1,2,'ttt')        //['a','ttt','d']         

1.3 添加

添加 —-  len 设置为 0,item 为添加的值

// 表示在下标为 1 处添加一项‘ttt’看来还是 splice 最方便啦
arr.splice(1,0,'ttt')        //['a','ttt','b','c','d']         

2. delete

delete 删除掉数组中的元素后,会把该下标出的值置为 undefined,数组的长度不会变

// 中间出现两个逗号,数组长度不变,有一项为 undefined

delete arr[1]  //['a', ,'c','d']     

正文完
 0