gogogo
管理员
管理员
  • UID25
  • 粉丝0
  • 关注0
  • 发帖数1384
阅读:3474回复:0

JS删除对象中的某一属性(delete)

楼主#
更多 发布于:2021-09-15 12:30


JS如何删除对象中的某一属性




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

已声明的对象不可删除, 对象中的对象属性可以删除
游客


返回顶部