jQuery的鏈式呼叫

Jsp發表於2018-05-31
鏈式呼叫是通過return this的形式來實現的。通過物件上的方法最後加上return this,把物件再返回回來,物件就可以繼續呼叫方法,實現鏈式操作了。

Obj().init().setFlag();  
複製程式碼

如果需要鏈式的處理,只需要在方法內部返回當前的這個例項物件this就可以了,因為返回當前例項的this,就又可以訪問自己的原型了。

Obj.prototype = {  
    init: function() {  
        ...  
        return this;  
    },  
    setFlag: function() {  
        ...  
        return this;  
    }  
}  
複製程式碼

鏈式呼叫的好處:節省程式碼量,程式碼看起來更優雅。

鏈式呼叫的問題:所有物件的方法返回的都是物件本身,也就是說沒有返回值,所以這種方法不一定在任何環境下都適合。



相關文章