JS 数组删除 splice和delete

 1、splice(详细说明:https://www.w3school.com.cn/jsref/jsref_splice.asp)

一般用法:array.splice(index,howmany,item1,.....,itemX)

参数 描述
index 必需。整数,规定从何处添加/删除元素,是开始插入/删除的数组元素的下标
howmany 必需。整数,规定删除多少个元素。如果设置为 0,则不会删除元素
item1, ..., itemX 可选。向数组添加的新元素

 

 

 

 

 

例:

//指定位置删除指定个数元素(多个)
var arr = ['a','b','c','d'];
var res = arr.splice(2,1);
console.log(res); //返回被删除的元素:["c"]
console.log(arr); //修改后的数组:["a", "b", "d"]

//指定位置删除指定个数(0个)
var arr = ['a','b','c','d'];
var res = arr.splice(2,0);
console.log(res); //返回被删除的元素:[]
console.log(arr); //修改后的数组:["a", "b", "c", "d"]

//指定位置删除元素同时插入元素
var arr = ['a','b','c','d'];
var res = arr.splice(2,1,'插入');
console.log(res); //返回被删除的元素:["c"]
console.log(arr); //修改后的数组:["a", "b", "插入", "d"]

 

2、delete:用于删除对象的某个属性,或删除数组的某一项

(详细说明:https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Operators/delete)

一般用法:

delete object.property 
delete object['property']
delete array[index]
参数 描述
object / array 对象的名称,或计算结果为对象的表达式(数组)
porperty / index 要删除的属性(下标)

例:

//删除对象的某个属性
let obj = {
    name:'alax',
    age:18,
    sex:'男'
}
delete obj.age
console.log(obj) //{name: "alax", sex: "男"}

delete obj['sex']
console.log(obj) //{name: "alax"}

//删除数组中的某一项(不会改变原有数组长度)
let arr =[1,2,3,4]
delete arr[0]
console.log(arr) //[empty, 2, 3, 4]

 

你可能感兴趣的:(JS)