Jquery链式调用原理


eg:  $("div").width("100px").height("100px");


实现原理:

let Fun={
  fn1:function(){
    console.log("fn1");
    return this;
  },
  fn2:function(){
    console.log("fn2");
    return this;
  },
  fn3:function(){
    console.log("fn3");
    return this;
  }
}

Fun.fn1().fn2();

  

这样子便可以实现链式了,原因是在每一个方法后面都加了一个return this。

在一个对象里面,this指向的是对象本身,当我们调用方法的时候,这些方法都是在对象内部调用的,所以加this才可以访问到这些方法。

如果没有加上return this的话,那么执行完一个函数之后,会默认返回undefined,undefine是js内部隐式添加的。

posted @ 2020-05-22 10:43  Comedyy  阅读(531)  评论(0)    收藏  举报