0
私は就職活動のために勉強していて、JavaScriptを使い始めました。これで終わりました。だから、strictモードでのevalへの間接呼び出し。 xはどうなるの?
:
"use strict";
var x = 0;
var y = 0;
eval("x=3;y=11;"); //direct call to eval in global scope
console.log("x: " + x); // outputs 3
console.log("y: " + y); // outputs 11
しかし:
"use strict";
var x = 0;
(0, eval)("x=3;y=11;"); //indirect call to eval in global scope
console.log("x: " + x); // outputs 0 because the strict mode won't allow the reassignment?
console.log("y: " + y); // outputs 11
私は知らない/ evalのが実行されたときのxと何が起こるかを理解しています。私は厳格なモードで割り当てが問題なく通過することを知っています。誰も私にこれを説明して喜んでですか?ありがとう!
私のコンソールに3が表示されます。 –
^同じです。このコードをどのような環境で実行していますか? –
両方のコードセクションが同じように動作します –