Javascript 为什么在下面的程序中没有删除x?
“delete”语句是否仅限于对象?是的,您是对的。Javascript 为什么在下面的程序中没有删除x?,javascript,Javascript,“delete”语句是否仅限于对象?是的,您是对的。delete操作符从对象中删除给定的属性。请查看此链接以获取完整解释:删除只能用于删除对象属性;它不能取消声明变量(请参阅关于它的内容) 如果需要使用此功能,请将x分配给窗口: window.x=1; 变量输出=(函数(){ 删除window.x; 返回窗口.x; })(); 控制台日志(输出)正确,删除设计用于对象属性。它对变量或函数没有影响。delete只能用于从对象中删除属性。它不能取消声明变量。您可以通过将x设置为window的属性,
delete
操作符从对象中删除给定的属性。请查看此链接以获取完整解释:删除
只能用于删除对象属性;它不能取消声明变量(请参阅关于它的内容)
如果需要使用此功能,请将x
分配给窗口
:
window.x=1;
变量输出=(函数(){
删除window.x;
返回窗口.x;
})();
控制台日志(输出)代码>正确,删除
设计用于对象属性。它对变量或函数没有影响。delete
只能用于从对象中删除属性。它不能取消声明变量。您可以通过将x
设置为window
的属性,然后运行delete window.x
将其散列在一起。阅读MDN上的文档:在要点中说明得非常清楚请对已发布的答案进行投票,而不是复制答案。
var x = 1;
var output = (function() {
delete x;
return x;
})();
console.log(output);