node(使用events模块)

来源:互联网 发布:phpstudy如何配置域名 编辑:程序博客网 时间:2024/05/19 03:18
var EventEmitter = require('events').EventEmitter;(引入events模块)
var life = new EventEmitter();
life.on('a',function( who ){
  console.log("给"+who+"做饭");
})
life.on('a',function( who  ){
  console.log("给"+who+"洗衣服");
})

function watter( who ){
  console.log("给"+who+"买衣服");
}
function get( who ){
 console.log("给"+who+"扔垃圾");
}
life.on('b', watter );
life.on("b", get );

//移除
life.removeListener("b",get);//移除b的一个方法(不用加括号)
life.removeAllListeners("a");//移除a的全部

console.log(life.listeners('a'));//打印出来是function(因为没有赋值)只打印a的

console.log("--------------------------");

console.log(life.listenerCount("a"));//统计a的总数

console.log("--------------------------");

console.log(life.listeners('a').length);//统计a的长度

var a = life.emit("a","男朋友");//给a函数赋值("男朋友")who(赋值就可以打印)
var b = life.emit("b","女朋友");//给b函数赋值("女朋友")who(赋值就可以打印)
var c = life.emit("c","小三");
//console.log(a);//判断这个事件有没有被执行
//console.log(b);//判断这个事件有没有被执行
//console.log(c);//判断这个事件有没有被执行


var EventEmitter = require('events').EventEmitter; //必须是events(引入这个事件模块)
var life = new EventEmitter();
life.on('a',function( who ){
console.log("给"+who+"做饭");
})
life.on('a',function( who ){
console.log("给"+who+"洗衣服");
})

function watter( who ){
console.log("给"+who+"买衣服");
}
function get( who ){
console.log("给"+who+"扔垃圾");
}
life.on('b', watter );
life.on("b", get );

//移除
life.removeListener("b",get);//移除b的一个方法(不用加括号)
life.removeAllListeners("a");//移除a的全部

console.log(life.listeners('a'));//打印出来是function(因为没有赋值)只打印a的

console.log("--------------------------");

console.log(life.listenerCount("a"));//统计a的总数

console.log("--------------------------");

console.log(life.listeners('a').length);//统计a的长度

var a = life.emit("a","男朋友");//给a函数赋值("男朋友")who(赋值就可以打印)
var b = life.emit("b","女朋友");//给b函数赋值("女朋友")who(赋值就可以打印)
var c = life.emit("c","小三");
//console.log(a);//判断这个事件有没有被执行
//console.log(b);//判断这个事件有没有被执行
//console.log(c);//判断这个事件有没有被执行


作者: 天5
链接:http://www.imooc.com/article/18391
来源:慕课网
原创粉丝点击