1
次Backbone.js注釈付きソースコードからの抜粋です:BACKBONE.JSソースコード - eventsApi
var eventsApi = function(iteratee, events, name, callback, opts) {
var i = 0, names;
if (name && typeof name === 'object') {
if (callback !== void 0 && 'context' in opts && opts.context === void 0) opts.context = callback;
for (names = _.key(names); i < names.length; i++) {
events = eventsApi(iteratee, events, names[i], name[names[i]], opts);
}
} else if (name && eventSplitter.test(name)) {
for (names = name.split(eventSplitter); i < names.length; i++) {
events = iteratee(events, names[i], callback, opts);
}
} else {
events = iteratee(events, name, callback, opts);
}
return events;
};
オブジェクトなどのイベントのためeventsApi
機能をチェックし、jQueryのスタイルのイベントマップを処理するためです。
しかし、なぜそれがすべてのイベントを反復するので、再帰的にeventsApi
を呼び出しますか?上記で