入力すると
}{
Firefox または Chrome のコンソールでは、結果はSyntaxErrorではなくundefinedになります。
この構造はundefinedを返します (}!{ のような構造は false を返します)。そのような行動の理由は何ですか?
入力すると
}{
Firefox または Chrome のコンソールでは、結果はSyntaxErrorではなくundefinedになります。
この構造はundefinedを返します (}!{ のような構造は false を返します)。そのような行動の理由は何ですか?
コンソールに入るdebugger;と、ブレークポイントが表示され、答えが明らかになります:
with ((window && window.console && window.console._commandLineAPI) || {}) {
debugger;
}
Chrome の開発者ツールでは、入力はwithブロック内にラップされ、文字通り評価されます。したがって、 を入れると}{、以下が評価されます。
with ((window && window.console && window.console._commandLineAPI) || {}) {
}{
}
これは空のwithブロックで、その後に空のブロックが続きます。
読者への演習: やってみる}for(;;){