1.nodejs权威指南--基础知识
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权威指南--基础知识的更多相关文章
- HTTP权威指南-基础知识
1.URL,URI 统一资源标识符?统一标识定位符? 2.http,https,ftp http://<host>:<port>/<path>/?<que ...
- nodejs+gulp+webpack基础知识
nodejs+gulp+webpack基础知识 2019年08月22日 11:49:40 天府云创 阅读数 22 版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文 ...
- CSS权威指南 - 基础视觉格式化 3
行内替换元素 替换元素比如图片的高度比line-height大,并不会影响整个文字段落的line-height,会让有图片那一行框的高度可以容纳这个图片. 这个图片依然有一个line-height,和 ...
- 9.nodejs权威指南--Socket.IO
1. Socket.IO 1.1 服务器 var http = require('http'); var sio = require('socket.io'); var fs = require('f ...
- 8.nodejs权威指南--MongoDB
1. MongoDB var mongo = require('mongodb'); var host = '127.0.0.1'; var port = mongo.Connecton.DEFAUL ...
- 7.nodejs权威指南--加密与压缩
1. 加密与压缩 1.1 加密 var crypto = require('crypto'); var text = "12345678"; var hasher = crypto ...
- 6.nodejs权威指南--进程
1. 进程 var net = require('net'); var cluster = require('cluster'); cluster.setupMaster({ exec:'child. ...
- 5.nodejs权威指南--HTTP
1. HTTP 1.1 服务器 var http = require('http'); var server = http.createServer(function(req,rsp){ req.on ...
- 4.nodejs权威指南--TCP和UDP
1. TCP和UDP 1.1 TCP服务端 var net = require('net'); var server = net.createServer(); server.on('connecti ...
随机推荐
- oracle 特殊符号
http://hi.baidu.com/wind_stay/blog/item/85113a6f6553a5d680cb4a0e.html oracle通配符,运算符的使用 用于where比较条件的有 ...
- 新浪微博客户端(47)-在TextView中插入表情
DJEmotionPageView.m // 发送点击广播(和android类似,区别在于android的广播是只要有上下文对象context,就可以发送) // iOS中的通知发送和接收都是通过NS ...
- struts2文件上传提示信息国际化
1.在src的目录下新建文件fileUpload.properties 如图: fileUpload.properties文件内容为(把英文提示自定义为中文提示) struts.messages.er ...
- vim 树形目录插件NERDTree安装及简单用法
转自: http://blog.csdn.net/love__coder/article/details/6659103 1,安装NERDTree插件 先下载,官网:http://www.vim.or ...
- Eclipse构建Maven项目
1. 安装m2eclipse插件 要用Eclipse构建Maven项目,我们需要先安装meeclipse插件 点击eclipse菜单栏Help->Eclipse Marketpl ...
- CSS 和 JS 文件合并工具
写 CSS 和 JavaScript 的时候, 我们会遇到一个两难的局面: 要么将代码写在一个大文件, 要么将代码分成多个文件. 前者导致文件难以管理, 代码复用性差, 后者则因为需要在载入多个文件令 ...
- 利用Jquery的load函数实现页面的动态加载
利用Jquery的load函数实现页面的动态加载 js的强大功能相信大家都知晓,今天通过jquery的库函数load可以更加方便的实现页面的动态刷新,经过几天的研究与探索,终于有所成效!吾心甚蔚! ...
- Redis学习笔记二:单机数据库的实现
1. 数据库 服务器中的数据库 Redis服务器将所有数据库都保存在服务器状态redis.h/redisServer结构的db数组中,db数组的每个项都是一个redis.h/redisDb结构,每个r ...
- Codeforces 260 A - A. Laptops
题目链接:http://codeforces.com/contest/456/problem/A 解题报告:有n种电脑,给出每台电脑的价格和质量,要你判断出有没有一种电脑的价格小于另一种电脑但质量却大 ...
- Windows 10磁盘占用100%解决办法
开机后磁盘占用高,是因为 windows 10 默认启用了 superfetch 服务. 这个服务的主要功能是加快程序的启动速度.开机以后,系统将那些经常使用的程序,预先从硬盘加载到内存中,这样, ...