jsチェーン呼び出しの原理

2086 ワード

今日は仕事が忙しくなくて、自分が書いたコードに規範性と多重性がないと感じて、大神が書いたコードをよく研究しました.やはり多くの私は特に理解していません.大神が書いた相手の最後の一言にreturn thisが加わったのを見た.私はコードを書いたことがありません.インターネットでチェーン呼び出しを見ました.次は詳しく比較して、みんなで勉強しましょう.チェーン呼び出しは、jqueryコードで操作を書くときによく適用されます.例えば、
$("#id").addClass('active').siblings().removeClass('active');

チェーン呼び出しの原理オブジェクト上のメソッドに最後にreturn thisを付けてオブジェクトを戻し、オブジェクトはメソッドを呼び出し続けるので、チェーン操作ができます.demoは以下の通りです.
var obj={};
obj.a=function(){
    console.log("a")
    return this
}
obj.b=function(){
    console.log("n")
    return this
}
obj.a().b();

コンストラクション関数でdemoを次のように呼び出すこともできます.
function Fun(){
    var obj={};
    obj.a=function(index){
        ......
        return this
    }
    return obj
}

//  
var demo=Fun();
$("#btn").click(function(){
    demo.a(2);
})

このコードがチェーン操作を実現する例である.原理はまだ簡単です.