Socket
Socket
Sign inDemoInstall

eventemitter3

Package Overview
Dependencies
Maintainers
1
Versions
35
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

eventemitter3 - npm Package Compare versions

Comparing version 0.1.3 to 0.1.4

leak.js

11

benchmarks/run/listeners.js
'use strict';
return;
/**

@@ -36,2 +34,8 @@ * Benchmark related modules.

for (var i = 0; i < 25; i++) {
ee1.on('event', handle);
ee3.on('event', handle);
master.on('event', handle);
}
//

@@ -46,9 +50,6 @@ // EE2 doesn't correctly handle listeners as they can be removed by doing a

).add('EventEmitter 1', function test1() {
ee1.on('foo', handle);
ee1.listeners('foo');
}).add('EventEmitter 3', function test2() {
ee3.on('foo', handle);
ee3.listeners('foo');
}).add('EventEmitter 3 (master)', function test2() {
master.on('foo', handle);
master.listeners('foo');

@@ -55,0 +56,0 @@ }).on('cycle', function cycle(e) {

@@ -11,6 +11,13 @@ 'use strict';

function EventEmitter() {
this._events = {};
}
/**
* Holds the assigned EventEmitters by name.
*
* @type {Object}
* @private
*/
EventEmitter.prototype._events = undefined;
/**
* Return a list of assigned event listeners.

@@ -23,2 +30,3 @@ *

EventEmitter.prototype.listeners = function listeners(event) {
if (!this._events) return [];
return Array.apply(this, this._events[event] || []);

@@ -42,3 +50,3 @@ };

, args
, i;
, i, j;

@@ -63,9 +71,16 @@ if (1 === length) {

} else {
for (i = 1, args = new Array(len -1); i < len; i++) {
args[i - 1] = arguments[i];
}
for (i = 0; i < length; i++) {
if (listeners[i].__EE3_once) this.removeListener(event, listeners[i]);
for (i = 0; i < length; fn = listeners[++i]) {
if (fn.__EE3_once) this.removeListener(event, fn);
fn.apply(fn.__EE3_context, args);
switch (len) {
case 1: listeners[i].call(fn.__EE3_context); break;
case 2: listeners[i].call(fn.__EE3_context, a1); break;
case 3: listeners[i].call(fn.__EE3_context, a1, a2); break;
default:
if (!args) for (j = 1, args = new Array(len -1); j < len; j++) {
args[j - 1] = arguments[j];
}
listeners[i].apply(fn.__EE3_context, args);
}
}

@@ -171,3 +186,4 @@ }

try { module.exports = EventEmitter; }
catch (e) {}
if ('object' === typeof module && module.exports) {
module.exports = EventEmitter;
}
{
"name": "eventemitter3",
"version": "0.1.3",
"version": "0.1.4",
"description": "EventEmitter3 focuses on performance while maintaining a Node.js AND browser compatible interface. This the source of the same EventEmitter that is used in Primus.",

@@ -18,10 +18,13 @@ "main": "index.js",

"Events",
"reactor",
"addEventListener",
"addListener",
"emit",
"emits",
"emitter",
"event",
"once",
"pub/sub",
"publish",
"subscribe",
"event",
"emitter",
"addListener",
"addEventListener"
"reactor",
"subscribe"
],

@@ -28,0 +31,0 @@ "author": "Arnout Kazemier",

@@ -260,2 +260,5 @@ 'use strict';

moop.listeners();
meap.listeners();
moop.on('data', function () {

@@ -262,0 +265,0 @@ throw new Error('I should not emit');

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc