首页 > 编程语言 > 详细

javascript delete操作符

时间:2018-01-18 21:39:01      阅读:198      评论:0      收藏:0      [点我收藏+]

 

 delete 操作符是从某个对象上移除指定属性,成功删除的时候返回 true ,否则返回 false。

 

  如果删除的属性在对象上不存在,那么 delete 将不起作用,但仍会返回 true。

var person = {
      age:100,
       name:"yangguo",
   }
   console.log(person.name);//yangguo
   console.log(delete person.name);//true
   console.log(person.name);//undefined
   console.log(delete person.girlfriend);//true 删除一个不存在的属性时也会返回 true

 

不可配置的属性:当一个属性被设置为不可设置,delete操作将不会有任何效果,并且会返回false。在严格模式下会抛出语法错误。

var person={};
Object.defineProperty(person,"name",{value:"yangguo",configuar:false});
console.log(person);//{name: "yangguo"}
console.log(delete person.name);//false
console.log(person.name);//yangguo

 

任何使用 var 声明的属性 不能从全局作用域和函数作用域中删除。未使用 var 声明的属性将会被删除

var person = "yangguo";
console.log(delete person);//false
console.log(person);//yangguo
            
color = "red";
console.log(delete color)//true
console.log(color);//Uncaught ReferenceError: color is not defined

 

delete 操作符不能删除任何在全局作用域中的函数(无论这个函数是来自于函数声明或函数表达式)

function fun(){};
console.log(delete fun);//false
console.log(fun);//? fun(){}
            
var func=function(){};
console.log(delete func);//false
console.log(func);//? (){}

 

javascript delete操作符

原文:https://www.cnblogs.com/jyfeng/p/8313033.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!