delete
操作符用于删除对象的某个属性;如果没有指向这个属性的引用,那它最终会被释放。
const users = {
name:'xyz',
age: 21
}
console.log(delete users.age)//true
console.log("users:",users)//users: {name: "xyz"}
删除成功返回true
删除一个数组元素时,数组的长度不受影响。即便你删除了数组的最后一个元素也是如此。
const arr = [1,11,22]
console.log(delete arr[2])//true
console.log(arr)//(3) [1, 11, empty]
删除成功返回true
如果你试图删除的属性不存在,那么delete将不会起任何作用,但仍会返回true
const arr = [1, 22, 33, 4, 44, 5, 55, 6, 77];
console.log(delete arr[20])//true
console.log(arr)//(9) [1, 22, 33, 4, 44, 5, 55, 6, 77]
const obj = {
name: 'xyz',
age: 21,
}
console.log(delete obj.hobby)//true
console.log(obj)//{name: "xyz", age: 21}