1.node中使用定时器的问题在于,它并非精确的.譬如setTimeout()设定一个任务在10ms后执行,但是在9ms后,有一个任务占用了5ms,再次轮到定时器时,已经耽误了4ms. 好了node中的定时器就简单的讲这么多. 2.看代码:代码如下: process.nextTick(function(){console.log("延迟执行"); }); console.log("正常执行1"); console.log("正常执行2"); console.log("正常执行3"); console.log("正常执行4");通过这个例子,我想大家很清楚的就能看到n...
方法说明: 检测path是否为绝对路径。一个绝对路径会解析到相同的位置,无论是不是在工作目录。 语法:代码如下: path.isAbsolute(path)由于该方法属于path模块,使用前需要引入path模块(var path= require(“path”) ) 接收参数: path path路径 例子:代码如下: //Posix examples: path.isAbsolute(/foo/bar) // true path.isAbsolute(/baz/..) // true path.isAbsolute(qux/) // false path.isAbsolute(.) // false /...
方法说明: 将多个参数组合成一个 path (详细请看例子) 语法:代码如下: path.join([path1], [path2], [...])由于该方法属于path模块,使用前需要引入path模块(var path= require(“path”) ) 例子:代码如下: path.join(/foo, bar, baz/asdf, quux, ..) // returns /foo/bar/baz/asdf path.join(foo, {}, bar) // throws exception TypeError: Arguments to path.join must be strings源码:代码如下: // windows version exp...
方法说明: 输出规范格式的path字符串。 语法:代码如下: path.normalize(p)由于该方法属于path模块,使用前需要引入path模块(var path= require(“path”) ) 例子:代码如下: path.normalize(/foo/bar//baz/asdf/quux/..) // returns /foo/bar/baz/asdf源码:代码如下: // windows version exports.normalize = function(path) { var result = splitDeviceRe.exec(path), device = result[1] || , isUnc = device && device.cha...
方法说明: 将参数 to 位置的字符解析到一个绝对路径里。 语法:代码如下: path.resolve([from ...], to)由于该方法属于path模块,使用前需要引入path模块(var path= require(“path”) ) 接收参数: from 源路径 to 将被解析到绝对路径的字符串 例子:代码如下: path.resolve(/foo/bar, ./baz) // returns /foo/bar/baz path.resolve(/foo/bar, /tmp/file/) // returns /tmp/file ...
方法说明: 返回注册了指定事件的监听器数量。 语法:代码如下: EventEmitter.listenerCount(emitter, event)接收参数: emitter 事件发射器 event 事件 例子:代码如下: if(events.EventEmitter.listenerCount(this, feedback) == 0) {//.... }源码:代码如下: EventEmitter.listenerCount = function(emitter, type) {var ret;if (!emitter._events || !emitter._events[type])ret = 0;else if (util...
方法说明: 返回path路径文件扩展名,如果path以 ‘. 为结尾,将返回 ‘.,如果无扩展名 又 不以.结尾,将返回空值。 语法:代码如下: path.extname(p)由于该方法属于path模块,使用前需要引入path模块(var path= require(“path”) ) 接收参数: p path路径 例子:代码如下: path.extname(index.html) // returns .html path.extname(index.) // returns . path.extname(index) // returns 源码:代码如下: exports.extna...
方法说明: 返回当前正在使用的 ip地址,以字符串形式返回 语法:代码如下: dns.getServers()接收参数: 无 源码:代码如下: exports.getServers = function() {return cares.getServers(); };
方法说明: 提取出用 ‘/ 隔开的path的最后一部分。(8详见例子) 语法:代码如下: path.basename(p, [ext])由于该方法属于path模块,使用前需要引入path模块(var path= require(“path”) ) 接收参数: p 要处理的path ext 要过滤的字符 例子:代码如下: var path= require("path"); path.basename(/foo/bar/baz/asdf/quux.html) // returns quux.html path.basename(/foo/bar/baz/asdf/...
方法说明: 向标准错误流输出当前的调用栈。 语法:代码如下: console.trace(label)接收参数: label 例子:代码如下: console.trace(); //运行结果: Trace:at Object. (/home/byvoid/consoletrace.js : 1: 71)at Module._compile (module.js:441:26)at Object..js (module.js:459:10)at Module.load (module.js:348:31)at Function._load (module.js:308:12)at Array.0 (module.js:479:10)at EventEmitter._tickCallback (node.j...
方法说明: 方法将返回平台的真实路径,多个用 “:” 或 “;” 隔开。 语法:代码如下: path.delimiter由于该方法属于path模块,使用前需要引入path模块(var path= require(“path”) ) 接收参数: 无 例子:代码如下: //在 *nix 系统上的例子: console.log(process.env.PATH) // /usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin process.env.PATH.split(path.delimiter) // returns [/usr/bin, /bin, /usr/sbin, /sbin, /us...
方法说明: 返回path的目录。类似于UNIX目录命令。 语法:代码如下: path.dirname(p)由于该方法属于path模块,使用前需要引入path模块(var path= require(“path”) ) 接收参数: p path地址 例子:代码如下: var path= require("path"); path.dirname(/foo/bar/baz/asdf/quux) // returns /foo/bar/baz/asdf源码:代码如下: exports.dirname = function(path) { var result = splitPath(path), root = result[0], dir = ...
方法说明: 向标准输出流打印字符并以换行符结束。 语法:代码如下: console.log([data], [...])接收参数: console.log接受若干个参数,如果只有一个参数,则输出这个参数的字符串形式。 如果有多个参数,则以类似于C语言printf()命令的格式输出。 如果没有参数,只打印一个换行符。 例子:代码如下: var count = 1234; console.log(count: %d, count); //输出结果 count : 1234; console.log(Hello world); //输出结果 Hello w...
方法说明: 返回一个新的buffer对象,这个新buffer和老buffer公用一个内存。 但是被start和end索引偏移缩减了。(比如,一个buffer里有1到10个字节,我们只想要4-8个字节,就可以用这个函数buf.slice(4,8),因为他们共用一个内存,所以不会消耗内存,) 因为共用内存,所以修改新的buffer后,老buffer的内容同样也会被修改。 语法:代码如下: buffer.slice([start], [end])接收参数: start 开始位置,默认 end 结束位置,默认为b...
方法说明: 该方法与 console.error() 相同。看源码就知道,console.error其实就是直接调用console.warn的 语法:代码如下: console.warn([data], [...])接收参数: console.log接受若干个参数,如果只有一个参数,则输出这个参数的字符串形式。 如果有多个参数,则以类似于C语言printf()命令的格式输出。 如果没有参数,只打印一个换行符 例子:代码如下: var count = 1234; console.error(count: %d, count);源码:代码如下: Co...