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下打包模块archiver详解
Dec 03 NodeJs
NodeJS使用formidable实现文件上传
Oct 27 NodeJs
Nodejs 发送Post请求功能(发短信验证码例子)
Feb 09 NodeJs
深入nodejs中流(stream)的理解
Mar 27 NodeJs
webstorm中配置nodejs环境及npm的实例
May 15 NodeJs
nodejs高大上的部署方式(PM2)
Sep 11 NodeJs
Nodejs把接收图片base64格式保存为文件存储到服务器上
Sep 26 NodeJs
深入理解NodeJS 多进程和集群
Oct 17 NodeJs
nodejs图片处理工具gm用法小结
Dec 12 NodeJs
Sublime Text3 配置 NodeJs 环境的方法
May 20 NodeJs
NodeJS多种创建WebSocket监听的方式(三种)
Jun 04 NodeJs
nodejs+express最简易的连接数据库的方法
Dec 23 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
一棵php的类树(支持无限分类)
2006/10/09 PHP
php读取xml实例代码
2010/01/28 PHP
php5.3提示Function ereg() is deprecated Error问题解决方法
2014/11/12 PHP
PHP实现操作redis的封装类完整实例
2015/11/14 PHP
php7 错误处理机制修改实例分析
2020/05/25 PHP
改进:论坛UBB代码自动插入方式
2006/12/22 Javascript
身份证号码前六位所代表的省,市,区, 以及地区编码下载
2007/04/12 Javascript
javascript multibox 全选
2009/03/22 Javascript
关于延迟加载JavaScript
2015/05/05 Javascript
简单了解JavaScript操作XPath的一些基本方法
2016/06/03 Javascript
第一次接触神奇的Bootstrap菜单和导航
2016/08/01 Javascript
JQuery动态添加Select的Option元素实现方法
2016/08/29 Javascript
关于 jQuery Easyui异步加载tree的问题解析
2016/12/06 Javascript
Bootstrap基本组件学习笔记之按钮组(8)
2016/12/07 Javascript
Three.js基础部分学习
2017/01/08 Javascript
详解Javascript中DOM的范围
2017/02/13 Javascript
JS ES6中setTimeout函数的执行上下文示例
2017/04/27 Javascript
微信小程序 es6-promise.js封装请求与处理异步进程
2017/06/12 Javascript
js 计算图片内点个数的示例代码
2019/04/04 Javascript
js实现随机数小游戏
2019/06/28 Javascript
浅谈Python 的枚举 Enum
2017/06/12 Python
python中reduce()函数的使用方法示例
2017/09/29 Python
详解通过API管理或定制开发ECS实例
2018/09/30 Python
解决python中os.listdir()函数读取文件夹下文件的乱序和排序问题
2018/10/17 Python
Python对象的属性访问过程详解
2020/03/05 Python
python中用ctypes模拟点击的实例讲解
2020/11/26 Python
7款设计巧妙的css3飘带状3D立体效果的导航菜单和表单窗口
2013/02/04 HTML / CSS
详解CSS中iconfont的使用
2015/08/04 HTML / CSS
HTML中fieldset标签概述及使用方法
2013/02/01 HTML / CSS
廉价连衣裙和婚纱礼服在线销售:Tbdress
2019/02/28 全球购物
写出SQL四条最基本的数据操作语句(DML)
2012/12/12 面试题
Linux内核产生并发的原因
2016/11/08 面试题
车辆维修工自我评价怎么写
2013/09/20 职场文书
工商局所长四风自我剖析及整改措施
2014/10/26 职场文书
幼儿园圣诞节活动总结
2015/05/06 职场文书
详解Java实践之建造者模式
2021/06/18 Java/Android