An event emitter which takes regular expressions & strings for event names.
Well tested and available in vanilla javascript for the browser or server.
npm install regexemitter --save
/**
regexeventemitter behaves just like nodejs native emitter except it
allows regular expressions as event names.
**/
var EventEmitter = require('regexemitter');
var events = new EventEmitter();
// register a new event
events.on( /send this message to (john|dave)/, function ( arg1, arg2 ){
console.log( 'event:', this.event );
console.log( 'message:', arg1, arg2 );
});
events.emit( 'send this message to john', 'hello', 'john' );
events.emit( 'send this message to andy', 'hi', 'andy' );
events.emit( 'send this message to dave', 'ahoy', 'dave' );
event: send this message to john
message: hello john
event: send this message to dave
message: ahoy dave
Copy index.js
to your web server and rename it regexemitter.js
.
<script type="text/javascript" src="regexemitter.js"></script>
<script type="text/javascript">
/**
regexeventemitter behaves just like nodejs native emitter except it
allows regular expressions as event names.
**/
var events = new EventEmitter();
// register a new event
events.on( /send this message to (john|dave)/, function ( arg1, arg2 ){
console.log( 'event:', this.event );
console.log( 'message:', arg1, arg2 );
});
events.emit( 'send this message to john', 'hello', 'john' );
events.emit( 'send this message to andy', 'hi', 'andy' );
events.emit( 'send this message to dave', 'ahoy', 'dave' );
</script>
event: send this message to john
message: hello john
event: send this message to dave
message: ahoy dave
npm test