JS如何删除对象中的某一属性(delete)
IsQtion 人气:0JS如何删除对象中的某一属性
var obj={ name: 'zhagnsan', age: 19 } delete obj.name //true typeof obj.name //undefined
通过delete操作符, 可以实现对对象属性的删除操作, 返回值是布尔
可以删除其他东西吗
1.变量
var name ='zs' //已声明的变量 delete name //false console.log(typeof name) //String age = 19 //未声明的变量 delete age //true typeof age //undefined this.val = 'fds' //window下的变量 delete this.val //true console.log(typeof this.val) //undefined
已声明的变量windows下的变量可以删除, 未声明的变量不可删除
2.函数
var fn = function(){} //已声明的函数 delete fn //false console.log(typeof fn) //function fn = function(){} //未声明的函数 delete fn //true console.log(typeof fn) //undefined
3.数组
var arr = ['1','2','3'] ///已声明的数组 delete arr //false console.log(typeof arr) //object arr = ['1','2','3'] //未声明的数组 delete arr //true console.log(typeof arr) //undefined var arr = ['1','2','3'] //已声明的数组 delete arr[1] //true console.log(arr) //['1','empty','3']
4.对象
var person = { height: 180, long: 180, weight: 180, hobby: { ball: 'good', music: 'nice' } } delete person ///false console.log(typeof person) //object var person = { height: 180, long: 180, weight: 180, hobby: { ball: 'good', music: 'nice' } } delete person.hobby ///true console.log(typeof person.hobby) //undefined
已声明的对象不可删除, 对象中的对象属性可以删除
加载全部内容