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.nodejs权威指南--基础知识的更多相关文章

  1. HTTP权威指南-基础知识

    1.URL,URI 统一资源标识符?统一标识定位符?   2.http,https,ftp http://<host>:<port>/<path>/?<que ...

  2. nodejs+gulp+webpack基础知识

    nodejs+gulp+webpack基础知识 2019年08月22日 11:49:40 天府云创 阅读数 22   版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文 ...

  3. CSS权威指南 - 基础视觉格式化 3

    行内替换元素 替换元素比如图片的高度比line-height大,并不会影响整个文字段落的line-height,会让有图片那一行框的高度可以容纳这个图片. 这个图片依然有一个line-height,和 ...

  4. 9.nodejs权威指南--Socket.IO

    1. Socket.IO 1.1 服务器 var http = require('http'); var sio = require('socket.io'); var fs = require('f ...

  5. 8.nodejs权威指南--MongoDB

    1. MongoDB var mongo = require('mongodb'); var host = '127.0.0.1'; var port = mongo.Connecton.DEFAUL ...

  6. 7.nodejs权威指南--加密与压缩

    1. 加密与压缩 1.1 加密 var crypto = require('crypto'); var text = "12345678"; var hasher = crypto ...

  7. 6.nodejs权威指南--进程

    1. 进程 var net = require('net'); var cluster = require('cluster'); cluster.setupMaster({ exec:'child. ...

  8. 5.nodejs权威指南--HTTP

    1. HTTP 1.1 服务器 var http = require('http'); var server = http.createServer(function(req,rsp){ req.on ...

  9. 4.nodejs权威指南--TCP和UDP

    1. TCP和UDP 1.1 TCP服务端 var net = require('net'); var server = net.createServer(); server.on('connecti ...

随机推荐

  1. 使用Struts 2框架实现文件下载

    从服务器发送一个文件到浏览器需要以下几个步骤 把HTTP响应里的ContentType标头设置为被下载文件的内容类型.ContentType标头的作用是表明数据包里的数据是什么类型, 它由一个多媒体类 ...

  2. ubuntu系统下更新jdk版本

    1. 添加软件源 sudo add-apt-repository ppa:webupd8team/java 2. 更新软件源 sudo apt-get update 3. 安装 jdk1.8 sudo ...

  3. Linux服务器管理: 日志管理(一)

    1.日志管理介绍: a.日志服务:在CentOS6.x中日志服务以及由rsyslogd取代了原有的syslogd服务.rsyslogd日志服务更加先进,功能更多.但是不论该服务的使用,还是日子文件的格 ...

  4. Emacs教程

    中文 http://www.cnblogs.com/robertzml/category/209299.html 英文 http://ergoemacs.org/emacs/emacs_fun.htm ...

  5. PHP从零开始-笔记-面向对象编程的概念

    面向对象变成的概念 需要一一种不同的方式来考虑如何构造应用程序.通过对象可以在对应用程序所处理的显示任务.过程和思想进行编码是,实施更贴切的建模.OOP方法并不是将应用程序考虑成一个将大量数据从一个函 ...

  6. hash-4.hashtable

    1.先看hashtable的源代码 public synchronized V put(K key, V value) { // Make sure the value is not null if ...

  7. springmvc之自定义注解(annotation)

    参考:日志处理 三:Filter+自定义注解实现 系统日志跟踪功能 1.项目结构 2.pom.xml,添加需要依赖 <project xmlns="http://maven.apach ...

  8. 安卓手机当Mac、Win和Linux外置WIFI网卡

    Android手机都有USB共享网络的功能 ,利用此功能可以将网络共享给电脑 基本原理: 手机连接WIFI,开启USB网络共享,mac笔记本上网 (两款手机示意图) 博主实践证明: win10与Ubu ...

  9. JQuery选择器细节-遁地龙卷风

    1.层次选择器-子元素选择器 <body> <div> <p>lol</p> <div> <p></p> </ ...

  10. iOS开发——UI进阶篇(十一)应用沙盒,归档,解档,偏好设置,plist存储,NSData,自定义对象归档解档

    1.iOS应用数据存储的常用方式XML属性列表(plist)归档Preference(偏好设置)NSKeyedArchiver归档(NSCoding)SQLite3 Core Data 2.应用沙盒每 ...