var x = 1;
var output = (function() {
delete x;
return x;
})();
console.log(output);
“删除”语句仅限于对象吗?
答案 0 :(得分:9)
delete
仅可用于删除对象属性;它不能取消声明变量(请参见MDN)。
如果需要使用此功能,请将x
分配给window
:
window.x = 1;
var output = (function() {
delete window.x;
return window.x;
})();
console.log(output);
注意:通常,将window
对象弄乱是不好的做法,应尽可能避免。
答案 1 :(得分:4)
是的,您是对的。 delete
运算符从对象中删除给定的属性。请检查此链接以获取完整说明:MDN delete
答案 2 :(得分:3)
正确,delete
设计用于对象属性。它对变量或函数没有影响。