$.proxy() 的妙用
$.proxy() 最主要就是用來修改函式執行時的上下文物件的。
先看以下情景:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
).click( function () {
|
打斷一下...這裡用 var $this = $(this); 來處理也可以呀。
媽蛋,還讓不讓我講了啊喂。騷年郎,你是還沒接觸到 this 這門藝術的高深之處才會這樣覺得,將 this 不去標量化才是我們裝逼的價值。
不但少了個生成變數的效能輸出,還避免了變數名耦合,最極致的莫過於提高了複用性...
看一眼改版後的程式碼
1 2 3 4 5 6 7 8 9 10 11 12 |
HidePanel() {
|
上文說的是 $.proxy(fn, context) 用法,
而 $.proxy(context, name) 用法感覺更多的用在物件上,個人用的較少,因為感覺 new 一個物件函式要更爽(而 new 出來的 this 肯定不會亂了呀),不過還是列一下吧
1 2 3 4 5 6 |
|