SyntaxError: applying the 'delete' operator to an unqualified name is deprecated
ë©ì¸ì§
SyntaxError: Calling delete on expression not allowed in strict mode (Edge) SyntaxError: applying the 'delete' operator to an unqualified name is deprecated (Firefox) SyntaxError: Delete of an unqualified identifier in strict mode. (Chrome)
ìë¬ íì
ì격(Strict) 모ëììì SyntaxError
무ìì´ ì못ëììê¹?
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ë ê°ë¹ì§ 컬ë í°ì ìí´ ë©ëª¨ë¦¬ìì í´ì ë©ëë¤