♂twincle的NodeJS学习笔记(1)
发布于 12 年前 作者 twincle 7048 次浏览 最后一次编辑是 8 年前

1

在NodeJS中定义的变量默认为局部变量, 变量范围为所定义的模块内.

var something inside a Node module will be local to that module.


2

module为当前文件的实例名称。exports = module.exports 当在其他文件中调用 require("./module名.js")时返回该exports对象 多次require同一文件,将不会多次执行该文件,如需多次执行,可将代码组织成function然后exports require不同路径下相同文件名的module时,不保证每次得到相同的对象


在NodeJS中,module和file是一对一的关系,通过上述方法获得某个同文件夹下文件的module。"/“开头时为绝对路径,”./“开头时为当前目录路径,”…/"开头时为上级路径 module/file中exports的对象为公有对象,否则为私有对象。


因此在应用中将module中需要共享的对象或方法定义在exports中,如: var myObj = {}; exports.myObj = myObj; // Same as module.exports.myObj = myObj;


3

setTimeout(callback, ms)可挂起操作,实际挂起时间可能根据系统环境变化,挂起时间不超过24.8天。 clearTimeout(t)清除最近一个挂起操作,callback将不被执行


setInterval(callback, ms)可每隔ms循环执行操作,实际间隔时间可能根据系统环境变化,间隔时间不超过24.8天。 clearInterval(t)清除最近一个挂起操作,callback将不被执行


Timer类中也包含类似方法,祥见:http://nodejs.org/api/all.html#all_timers


4

console.time(label)和console.timeEnd(label)成对出现 将输出两个语句间程序执行的时间


5

console.trace(label)输出当前语句调用堆栈列表


require可产生循环调用,最终结果将只产生一次,不会产生循环调用


NodeJS中lib文件夹内的module是core module,require时将优先调用,即使当前应用有同名js


require.main === module 可测试是否直接从本文件运行node

1 回复
回到顶部