0
var x = "hi!";
request(url, function(error, response, body) {
console.log(x); //prints "hi!"
});
私はラインconsole.log(x)
を削除し、console.log('hello!')
と交換し、WebStormでその行にブレークポイントを置いて、私はx
を評価しようとすると、それは言うならば「にReferenceError:xが定義されていません」。変数はいつJavaScript関数の環境の一部になりますか?
なぜですか?それはWebStormがどう働くのか、それともJavaScriptは関数内で変数が使われているだけのプリプロセッサを持っていますか?
Webstormのデバッガは、おそらくhttps://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference([厳格なモード]で動作してご覧ください/ Strict_mode) –
@RobM。私はスクリプトの一番上に「厳密に使用する」も持っています。厳密なモードはこれにどのように影響しますか? – Ayush