1.1.0 • Published 5 years ago

mittens v1.1.0

Weekly downloads
125
License
MIT
Repository
github
Last release
5 years ago

mittens

mittens is a really small, really fast event emitter for all browsers

build status

install

npm install mittens

use

var mittens = require('mittens')

// There are many ways to mix
// mittens into an obj
var obj = function () {}
mittens.call(obj)
obj = mittens.call({})
obj = mittens({})

// You can even create an instance
// if you’re that way inclined!
obj = new mittens

// You can add event listeners...
obj.on('event', console.log)
// and emit as many values as you please!
// (each will be passed as an argument)
obj.emit('event', 1)
obj.emit('event', 1, 2)
obj.emit('event', 1, 2, 3)

// You can also add wildcard event listeners...
obj.on('*', function (name, one) {
  // name === 'event'
  // one === 1
})

// You can remove an event listener...
obj.off('event', console.log)
// or all the listeners of an event...
obj.off('event')
// or all the listeners of all events!
obj.off()

// Now go forth!

benchmark

var i = 10, j = 1000
while (i--) obj.on('event', function () {})
while (j--) obj.emit('event', j)
 [419 B] mittens x 5,189 ops/s
 [870 B] eventemitter3 x 4,785 ops/s
[1039 B] events x 4,103 ops/s
 [290 B] tiny-emitter x 2,554 ops/s
 [374 B] emitter-component x 2,487 ops/s
 [161 B] mitt x 2,307 ops/s
 [384 B] component-emitter x 2,011 ops/s

Note: Bundle sizes calculated via browserify | uglifyjs | brotli

obey

MIT

1.1.0

5 years ago

1.0.9

7 years ago

1.0.8

7 years ago

1.0.7

7 years ago

1.0.6

7 years ago

1.0.5

7 years ago

1.0.4

7 years ago

1.0.3

7 years ago

1.0.2

7 years ago

1.0.1

7 years ago

1.0.0

7 years ago