什么是_events以及它用于什么?

时间:2013-02-21 15:39:48

标签: javascript backbone.js

搜索backbone我看到它被使用了12次并且始终附加到Backbone.Events内的this

它只是Backbone.Events的属性吗?如果是这样,为什么它有下划线前缀?

它用于什么?

on: function(name, callback, context) {
      if (!(eventsApi(this, 'on', name, [callback, context]) && callback)) return this;
      this._events || (this._events = {});
      var list = this._events[name] || (this._events[name] = []);
      list.push({callback: callback, context: context, ctx: context || this});
      return this;
    },

1 个答案:

答案 0 :(得分:3)

下划线表示应将其视为私人财产。 _events是Backbone.Events使用的事件回调映射。

添加到javascript对象的任何属性或方法都是公共的。下划线是一种广泛使用的约定,表明属性/方法不能在对象之外使用。

这是一个经典链接,可以解释一下: http://javascript.crockford.com/private.html