用途:进行标准输出流的输出
可以指定字符格式:console.log(“%s”,”“,”“);从第二个参数开始为字符串格式
可以计算表达式,可以使用toString
console.info用法与console.log一致,输出 % 使用 %%
重定向 node first.js > 123.log
var http = require('http');
http.createServer(function(request,resquire){
resquire.end("The server is running on http://localhost:3000");
}).listen(3000);
console.log("The server is running on http://localhost:3000");
console.log("%d",10,10.5);
console.log(2+3);
var a =22;
console.log(a.toString());
用途:进行标准错误输出流的输出
可以指定字符格式:console.error(“%s”,”“,”“);从第二个参数开始为字符串格式
可以计算表达式,可以使用toString
console.warn用法与console.log一致,输出 % 使用 %%
重定向 node first.js > 123.log
用途:查看一个对像的内容并将该对象的信息输入出到控制台
var user = new Object();
user.name = "finch";
user.getName = function(){return user.name};
user.setName = function(name){this.name = name};
console.dir(user);
用途:统计代码执行时间,time用于开始,timeEnd用于结束,使用毫秒数及时,两个函数需使用一样的标签。
console.time('1234');
for(var i=0;i<100000;i++) ;
console.timeEnd('1234');
用途:将当前位置出的信息栈信息作为标准错误信息进行输出。使用参数时表示标签
var user = new Object();
user.name = "finch";
user.getName = function(){return user.name};
user.setName = function(name){this.name = name};
console.dir(user);
console.trace("123");
用途:用于对一个表达式的执行结果进行评估,如果表达式结果为false,则输出一个消息字符串,并抛出AssertionError异常
用途:在当前时刻过去多少毫秒之后执行某个回调函数,具体延迟事件取决于外部因素。返回一个时间对象,clearTimeout 取消此对象。
参数:第一个为回调函数名,第二个为等待时间,第三个开始为回调函数参数
function fuc(){
console.log("123");
}
var time = setTimeout(fuc,5000);
//clearTimeout(time);
用途:每隔多少毫秒之后执行某个回调函数,具体延迟事件取决于外部因素。返回一个时间对象,clearInterval 取消此对象。
参数:第一个为回调函数名,第二个为等待时间,第三个开始为回调函数参数
function fuc(){
console.log("123");
}
var time = setInterval(fuc,1000);
//clearInterval(time);
用途:unref 取消回调函数,ref继续回调函数,注:不要过多使用time.unref()。
用途:加载相应模块
加载完成后的模块将存在在缓冲区,因此,重复引用模块不会引起模块内代码的多次执行,解决方案:将模块内相应部分改为方法,导出。
require.resolve函数:返回相应模块的绝对路径
require.cache对象:代表缓存了所有已加载模块的缓存去,可以使用console.log进行查看。
用途:_filename 变量用于获取当前模块文件名,_dirname变量当前模块完整的路径名
函数名:EventEmitter.listenerCount()方法,可用来获取某个对象的指定事件的事件处理函数的数量,需要引用 event 模块。
var http = require('http');
var evt = require('events');
var ser = http.createServer();
ser.on('request',function(req,res){
if(req.url !== "/favicon.ico")console.log(req.url+'\n using "on" methode');
res.end();
});
ser.once('request',function(req,res){
if(req.url !== "/favicon.ico")console.log(req.url+'\n using "once" methode');
res.end();
});
console.log(ser.listeners('request'));
var fun = function(){
console.log('using "removeListener" method');
}
ser.on('request',fun);
time_f = function(name,fun){
ser.removeListener(name,fun);
}
var time = setTimeout(time_f,5000,'request',fun);
// 自定义事件触发
ser.on('unAuto',function(var1,var2){
console.log(var1);
console.log(var2);
});
ser.emit('unAuto','123','456');
console.log(evt.EventEmitter.listenerCount(ser,'request'));
ser.listen(3000);
作用:提示对EventEmitter类的子类实例对象绑定事件处理函数
var http = require('http');
var evt = require('events');
var ser = http.createServer();
ser.on('request',function(req,res){
if(req.url !== "/favicon.ico")console.log(req.url+'\n using "on" methode');
res.end();
});
ser.once('request',function(req,res){
if(req.url !== "/favicon.ico")console.log(req.url+'\n using "once" methode');
res.end();
});
console.log(ser.listeners('request'));
var fun = function(){
console.log('using "removeListener" method');
}
ser.on('newListener',function(e,r){
console.log("对"+e+"事件添加事件处理函数");
console.log(r);
});
ser.on('removeListener',function(e,r){
console.log("对"+e+"事件取消事件处理函数");
console.log(r);
});
ser.on('request',fun);
time_f = function(name,fun){
ser.removeListener(name,fun);
}
var time = setTimeout(time_f,5000,'request',fun);
// 自定义事件触发
ser.on('unAuto',function(var1,var2){
console.log(var1);
console.log(var2);
});
ser.emit('unAuto','123','456');
console.log(evt.EventEmitter.listenerCount(ser,'request'));
ser.listen(3000);