this
、例えば、それが属するオブジェクトを参照:JavaScriptは「この」は機能ブロック
var someObj = {
logObj : function() { return this }
}
obj.logObj() => someObj
と機能が目的です。しかし、なぜ関数内のthis
が関数ではなくウィンドウを参照しているのですか?例えば、
function someFunc() { return this }
はreturn someFunc()
ませんが、window
。
これらは全く別の例です。言語があなたの2番目の例のように機能した場合、 'someObj.logObj'は' someObj'ではなくその関数への参照を返します。Javascriptの 'this'への多くのガイドの1つを読んでほしい。 –
someFuncの所有者は、オブジェクトの中に入れなかったのでWindowです。 – Ryan
@ Ryanしかし、関数はオブジェクトです。 –