nodejs 中模拟实现 emmiter 自定义事件


Posted in NodeJs onFebruary 22, 2016

nodejs 中模拟实现 emmiter 自定义事件

<!DOCTYPE html>
<html>
 <head>
  <meta charset="UTF-8">
  <title></title>
  <script>
   function Emitter() {
    this.events = {}; //存放事件的地方
   }
   Emitter.prototype.on = function(type, cb) {
    var events = this.events; 
    events = events[type] = events[type] || [];
    events.push(cb);
   };
   
   Emitter.prototype.emit = function(type) {
    var args = [].slice.call(arguments, 1);
    var cbs = this.events[type], cb;
    while (cb = cbs && cbs.shift()) {
     cb.apply(this, args);
    }
   };
   var emitter = new Emitter();
   emitter.on('customevent', function(param) {
    alert(param);
   });
   emitter.on('customevent', function() {
    alert(1);
   });
   emitter.emit('customevent', 'xxx');
  </script>
 </head>
 <body>
 </body>
</html>
NodeJs 相关文章推荐
nodejs实现黑名单中间件设计
Jun 17 NodeJs
Nodejs关于gzip/deflate压缩详解
Mar 04 NodeJs
Nodejs express框架一个工程中同时使用ejs模版和jade模版
Dec 28 NodeJs
Nodejs实现短信验证码功能
Feb 09 NodeJs
nodejs开发微信小程序实现密码加密
Jul 11 NodeJs
nodejs构建本地web测试服务器 如何解决访问静态资源问题
Jul 14 NodeJs
详解NODEJS基于FFMPEG视频推流测试
Nov 17 NodeJs
NodeJS实现视频转码的示例代码
Nov 18 NodeJs
nodejs爬虫初试superagent和cheerio
Mar 05 NodeJs
nodejs之koa2请求示例(GET,POST)
Aug 07 NodeJs
nodejs简单抓包工具使用详解
Aug 23 NodeJs
详解利用nodejs对本地json文件进行增删改查
Sep 20 NodeJs
nodejs修复ipa处理过的png图片
Feb 17 #NodeJs
Nodejs爬虫进阶教程之异步并发控制
Feb 15 #NodeJs
你一定会收藏的Nodejs代码片段
Feb 04 #NodeJs
Nodejs中session的简单使用及通过session实现身份验证的方法
Feb 04 #NodeJs
nodejs实现bigpipe异步加载页面方案
Jan 26 #NodeJs
NodeJS实现阿里大鱼短信通知发送
Jan 17 #NodeJs
实例详解Nodejs 保存 payload 发送过来的文件
Jan 14 #NodeJs
You might like
解析array splice的移除数组中指定键的值,返回一个新的数组
2013/07/02 PHP
用PHP和Shell写Hadoop的MapReduce程序
2014/04/15 PHP
thinkphp分页集成实例
2017/07/24 PHP
三个思路解决laravel上传文件报错:413 Request Entity Too Large问题
2017/11/13 PHP
页面只有一个text的时候,回车自动submit的解决方法
2010/08/12 Javascript
JS模块与命名空间的介绍
2013/03/22 Javascript
JavaScript事件处理器中的event参数使用介绍
2013/05/24 Javascript
js调用图片隐藏&amp;显示实现代码
2013/09/13 Javascript
js实现div层缓慢收缩与展开的方法
2015/05/11 Javascript
JS实现超简单的鼠标拖动效果
2015/11/02 Javascript
灵活使用数组制作图片切换js实现
2016/07/28 Javascript
AngularJS基础 ng-include 指令示例讲解
2016/08/01 Javascript
详解node.js搭建代理服务器请求数据
2017/04/08 Javascript
Vue键盘事件用法总结
2017/04/18 Javascript
Angular HMR(热模块替换)功能实现方法
2018/04/04 Javascript
基于Vue2实现简易的省市区县三级联动组件效果
2018/11/05 Javascript
vue基础之v-bind属性、class和style用法分析
2019/03/11 Javascript
[02:32]DOTA2完美大师赛场馆静安体育中心观赛全攻略
2017/11/08 DOTA
[47:45]Liquid vs OG 2018国际邀请赛小组赛BO2 第二场 8.16
2018/08/17 DOTA
python单线程实现多个定时器示例
2014/03/30 Python
pandas.DataFrame.to_json按行转json的方法
2018/06/05 Python
详解django的serializer序列化model几种方法
2018/10/16 Python
对Django项目中的ORM映射与模糊查询的使用详解
2019/07/18 Python
python输出决策树图形的例子
2019/08/09 Python
python代码xml转txt实例
2020/03/10 Python
论文指导教师评语
2014/04/28 职场文书
求职信范文大全
2014/05/26 职场文书
2014乡镇班子个人对照检查材料思想汇报
2014/09/26 职场文书
2015年会计个人工作总结
2015/04/02 职场文书
公司保洁员管理制度
2015/08/04 职场文书
《多彩的民间艺术》教学反思
2016/02/16 职场文书
中国式结婚:司仪主持词(范文)
2019/07/25 职场文书
ConstraintValidator类如何实现自定义注解校验前端传参
2021/06/18 Java/Android
java设计模式--原型模式详解
2021/07/21 Java/Android
JavaScript数组 几个常用方法总结
2021/11/11 Javascript
python 安全地删除列表元素的方法
2022/03/16 Python