0
我想知道的是什麼調用jQuery插件功能jQuery的調用函數的方法 - 函數名()VS funcion_name.call(本)
function foo() {
//Do something
}
function init() {
foo.call(this);
// or
foo();
}
感謝
我想知道的是什麼調用jQuery插件功能jQuery的調用函數的方法 - 函數名()VS funcion_name.call(本)
function foo() {
//Do something
}
function init() {
foo.call(this);
// or
foo();
}
感謝
這兩種方法之間的區別這不是一個jQuery的東西,它是一個JavaScript的東西。它決定了呼叫期間this
將會是什麼。
隨着foo()
,調用foo
期間,this
將或者全局對象(鬆散模式)或undefined
(嚴格模式)。
With foo.call(x)
,在致電foo
時,this
將爲x
。所以foo.call(this)
確保在致電foo
期間this
與您呼叫它的this
相同。
更多(我的博客):
這是那麼一回事嗎? func()和func.call()?謝謝 – Gus
@Gus:'call'的第一個參數[不是可選的](http://www.ecma-international.org/ecma-262/5.1/#sec-15.3.4.4)。在鬆散模式下,'foo()'和'foo.call(theGlobalObject)'(其中'globalObject'是對全局對象的引用;在瀏覽器上你可以從'window'中得到這個])。在嚴格模式下,'foo()'與'foo.call(undefined)'相同。 –
非常感謝! – Gus