javascript - 在js中关于return this的问题

查看:107
本文介绍了javascript - 在js中关于return this的问题的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

on: function(event, fn) {
    var handles = this._handles || (this._handles = {}),
      calls = handles[event] || (handles[event] = []);

    // 找到对应名字的栈
    calls.push(fn);

    return this;
  }

在这个函数中,return this到底是什么意思,调用这个函数的时候并没有和赋值语句一起使用啊?请问为何还要使用?

解决方案

如果你知道jq的链式写法, 就知道为什么要return this了...

var a = {
    b: function(bb) {
        console.log(bb)
        return this;
    },
    c: function(cc) {
        console.log(cc)
        return this;
    },
    d: function(dd) {
        console.log(dd)
        return this;
    }
}
a.b(1).c(2).d(3);
// 1
// 2
// 3
// Object {}

这篇关于javascript - 在js中关于return this的问题的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆