JS 设计模式 五(链式调用)

链式调用

这个解释起来比较难,我觉得直接看代码比较直接,这个链式调用的主要用处,就是使代码更加简化,增加代码易读性。使用回调技术可以使取值器方法也只是链式调用。

代码

/*get不用callback
function Person(name) {
  var _name = name;
  this.setName = function (name) {
    _name = name;
    return this;
  };
  this.getName = function () {
    return _name
  };
}
var jordan = new Person('jordan1');
console.log(jordan.getName())
console.log(jordan.setName('Meow1').getName());
//*/

/*get用callback
function Person(name) {
  var _name = name;
  this.setName = function (name) {
    _name = name;
    return this;
  };
  this.getName = function (callback) {
    callback.call(this, _name);
    return this
  };
}

var jordan = new Person('jordan');
jordan.getName(console.log).setName('Meow').getName(console.log);
//*/

总结

链式调用比较常见的就是jquery库了。主要就是函数后加上return this,使对象可以继续调用函数达到支持链式调用的类。

你可能感兴趣的:(design-pattern,javascript)