1. 基础知识

1.1 全局作用域及函数

1.1.1 全局作用域

在nodejs中,定义了一个global对象,代表nodejs中的全局命名空间,任何全局变量、函数或对象都是该对象的一个属性值

1.1.2 setTimeout函数与clearTimeout函数

setTimeout函数的使用方法如下:标示延迟ms时间调用 cb(args)

setTimeout(cb,ms,[args],[…])

clearTimeout函数使用方法如下:清除setTimeout函数返回的定时器

clearTimeout(arg);

例子:

var testFn = function(name){

console.log(name);

}

var timer = setTimeout(testFn,100,'chuck'); //100毫秒后执行testFn

clearTimeout(timer); //清除timer

1.1.3 setInterval函数与clearInterval

setTimeout函数的使用方法如下:标示延迟ms时间调用 cb(args)

setTimeout(cb,ms,[args],[…])

clearTimeout函数使用方法如下:清除setTimeout函数返回的定时器

clearTimeout(arg);

例子:

var testFn = function(name){

console.log(name);

}

var timer = setTimeout(testFn,100,'chuck'); //100毫秒后执行testFn

clearTimeout(timer); //清除timer

1.2 __filename变量与__dirname变量

l 可以使用__filename获取当前文件模块带有绝对路径的文件名

l 可以使用__dirname获取当前文件模块的目录的绝对路径

1.3 EventEmitter类

在nodejs用于实现各种事件处理的events模块中,定义了一个EventEmitter类,所有可能触发的对象都继承了EventEmitter类的子类的实例对象

表1‑1 EventEmitter类的各种方法

方法名与参数

描述

addListener(event,listener)

对指定事件绑定事件处理函数

on(event,listener)

对指定事件绑定事件处理函数(addListener的别名)

once(event,listener)

对指定事件指定只执行一次的函数

removeListener(event,listener)

对指定事件移除事件处理函数

removeListener([event])

对指定事件移除所有事件处理函数

setMaxListeners(n)

指定事件处理函数的最大值,n为整数值

listeners(event)

获取指定事件的所有事件处理函数

emit(event,[arg1],[arg2],[…])

手工触发指定事件

另外,可以EventEmitter自身拥有一个listenerCount函数来获取某个对象的指定事件的处理函数的个数

EventEmitter.listenerCount(emitter,event);

同时,events模块为EventEmitter定义了newListener和removeListener两个事件,用于监听事件的移除和绑定,第一个参数表示指定的时间,第二个参数表示被绑定的时间处理函数

emitter.on('newListener',function(event,callback){

})

emitter.on('removeListener',function(event,callback){

})

最新文章

  1. linux动态代码注入
  2. 浅谈c语言结构体
  3. PHP遍历目录四种方法
  4. dedecms获取栏目下的频道列表
  5. Pyqt5 实时图像滚动
  6. DotNet中的计时器线程计时器
  7. 专题合集:深入Android媒体存储服务
  8. windows sevser 2012搭建网站
  9. logback生成多个不同的日志文件
  10. CF95C Volleyball
  11. [翻译] 使用 Visual Studio 2019 来提高每个开发人员的工作效率
  12. cf1000F One Occurrence (线段树)
  13. Linux内核中Makefile、Kconfig和.config的关系(转)
  14. 淘宝Tengine 2.1.2 稳定版(nginx/1.6.2) Centos 6.5安装教程
  15. Notes of Daily Scrum Meeting(12.3)
  16. Django restframwork教程之类视图(class-based views)
  17. Docker Hub Mirror
  18. UVA-4288 Cat vs. Dog (最大独立集)
  19. Django中模型(三)
  20. 【转】Expressions versus statements in JavaScript

热门文章

  1. Nosql 之 Redis(可做缓存 )
  2. 真正理解linux的inode?
  3. php的exit和die
  4. strtr函数的用法
  5. ConcurrentHashMap-----不安全线程hashmap-安全线程-hashtable
  6. grep之字符串搜索算法Boyer-Moore由浅入深(比KMP快3-5倍)
  7. R语言 recommenderlab 包
  8. CSS这些代码你都不会,你还有什么好说的!!!
  9. Sublim text2 的注册码
  10. linux 中断理解