JSFiddle - React, Tailwind, and code Playground
by kvzhuang
JavaScript
function fn1( value ){
console.log( value );
}
function fn2( value ){
fn1("fn2 says:" + value);
return false;
}
var callbacks = $.Callbacks( "memory" );
callbacks.add( fn1 );
callbacks.fire( "foo" );
callbacks.add( fn2 );
callbacks.fire( "bar" );
callbacks.remove( fn2 );
callbacks.fire( "foobar" );
console.log( "============");
/*
output:
foo //1st fire
fn2 says:foo // add fn2 and fire value is 1st fire
bar //2nd fire, memory keep 1st fire value
fn2 says:bar
foobar //3rd fire, fn2 removed, only fn1
*/
var callbacks2 = $.Callbacks( );
callbacks2.add( fn1 );
callbacks2.fire( "foo" );
callbacks2.add( fn2 );
callbacks2.fire( "bar" );
callbacks2.remove( fn2 );
callbacks2.fire( "foobar" );
/*
output
foo //1st fire
bar //2nd fire
fn2 says:bar
foobar //3rd fire
*/