0
はのは、この非常に基本的なprogram.jsを見てみましょう。ここではノードJS行動
console.log(this);
が出力されますコンソール:
$ nodejs
> console.log(this)
最後に未定義のログが表示されます。
なぜ同じ結果が得られないのですか?
おかげ
はのは、この非常に基本的なprogram.jsを見てみましょう。ここではノードJS行動
console.log(this);
が出力されますコンソール:
$ nodejs
> console.log(this)
最後に未定義のログが表示されます。
なぜ同じ結果が得られないのですか?
おかげ
あなたは基本的に2つの異なる環境でコードを実行しているので、次の2つの異なる動作を経験しています。
program.jsには、this answerが適用されます。あなたはnode.jsモジュールにいるので、this
はmodule.exports
と同じです。
node.js replには、this answerが適用されます。あなたはnode.jsモジュールにいません。グローバルコンテキストを使用するreplにいます。 this
はglobal
と同じです。ブラウザ内で同じコードを実行した場合、global
の代わりにwindow
オブジェクトが参照されます。
空のオブジェクトがどのように取得されているのか、定義されていないオブジェクトの外側にある未定義がグローバルオブジェクトを参照するのかよくわかりません。 IE。これは===グローバル – thomasmeadows