[問題] 為什麼使用 (function(){}).call(this);

作者: polola6212 (Polo)   2014-04-27 17:28:04
我是一個剛使用Javascript的新手
我在很多場合看到別人寫的Javascript都使用 (function(){}).call(this);
把方法給包起來,我自已google了.call 這個方法,但還是想不懂為什麼要這樣做。
請問各位先進,這樣做的理由是為什麼呢?
作者: mmis1000 (秋月戀楓)   2014-04-27 17:57:00
避免變數汙染,如果那樣做的話,就能隔開函式內外的變數
作者: Kenqr (function(){})()   2014-04-27 18:40:00
那和這種寫法 (function(){})(); 有差別嗎?
作者: mmis1000 (秋月戀楓)   2014-04-27 19:06:00
使用上沒有,效率上可能有差
作者: obamina48   2014-04-27 19:13:00
想請問效能上差在哪?
作者: polola6212 (Polo)   2014-04-27 20:10:00
謝謝1F大大,但小弟資質駑鈍,需要更詳細的解釋啊T_T
作者: mmis1000 (秋月戀楓)   2014-04-27 20:13:00
阿,剛剛去查了下,不加.call(this),會在嚴格模式下炸掉嚴格模式下,禁止在非構造子裡,用this關鍵字

Links booklink

Contact Us: admin [ a t ] ucptt.com