Errors: Delete in strict mode
信息
SyntaxError: applying the 'delete' operator to an unqualified name is deprecated (Firefox)
SyntaxError: Delete of an unqualified identifier in strict mode. (Chrome)错误类型
SyntaxError in strict mode only.
什么地方出了错?
JavaScript中的正常变量不能使用delete运算符删除。在严格模式下,试图删除一个变量会引发错误,不允许。
该delete运营商只能在对象上删除属性。如果对象属性是可配置的,则属性是“限定的”。
与常见的观点不同,delete运营商与直接释放内存无关。内存管理通过中断引用间接完成,请参阅内存管理页面和delete操作页面了解更多详细信息。
这个错误只发生在严格的模式代码中。在非严格的代码中,操作只是返回false。
例子
试图删除一个普通的变量,在JavaScript中不起作用,并在严格模式下引发错误:
'use strict';
var x;
// ...
delete x;
// SyntaxError: applying the 'delete' operator to an unqualified name
// is deprecated 要释放变量的内容,可以将其设置为null:
'use strict';
var x;
// ...
x = null;
// x can be garbage collected本文档系腾讯云开发者社区成员共同维护,如有问题请联系 cloudcommunity@tencent.com

