delete关键字
作用:
- 删除对象中的属性
- 删除没有使用var关键字声明的全局变量
注意:
- 返回值 布尔类型的值(我们可以通过该值来判断是否删除成功)
- 使用var关键字声明的变量无法被删除
- 删除对象中不存在的属性没有任何变化,但是返回值为true
- 不能删除window下面的全局变量(使用var声明),但是可以删除直接定义在window上面的属性
<script>
var dog = {
name:"阿黄",
color:"红色"
}
console.log(delete dog.color); //true
console.log(dog.color); //undefined
var a = 10;
b = 20; //没有使用var关键字声明的变量默认会成为全局变量,全局变量默认都会成为window的属性
console.log(b); //20
delete b;
// console.log(b);
console.log(a); //10
console.log(delete a); //删除不成功 false
console.log(a); //10
console.log(delete dog.age); //返回的是成功还是失败? 成功
//window
console.log(window.a); //10
delete window.a;
console.log(window.a); //10
window.demo = "demo";
console.log(window.demo); //demo
delete window.demo;
console.log(window.demo); //undefined
</script>
网友评论