node.js中的控制台
1. console.log方法:
用于标准输出流输出,即在控制台中显示一行字符串。
console.log("hello");
也可保存在文件中,调用执行。
node app.js
在默认情况下,标准输出流将被输出至控制台,可以将它重定向输出到文件中。
node app.js 1>info.log
//1代表重定向标准输出流
可以在console.log方法中通过参数指定输出字符串格式
//从第二个参数开始,一次输出所有字符串
console.log("%s","hoge","foo");//结果为hoge foo
//将对象转换为字符串后输出
console.log("%s","hoge",{foo:"FOO"});//输出结果为hoge {foo:"FOO"}
//将数值转换为字符串后输出
console.log("%d",10,10.5);//输出结果为10 10.5
//将字符串作为数值进行转换,输出NaN
console.log("%d","hoge");//输出NaN
//输出百分号
console.log("%%","hoge");//输出% hoge
可以在console.log方法中使用各种运算符计算输出结果,也可以使用toString方法将变量值转换为字符串后进行输出
console.log("2+2");//使用算数运算符,结果为4
console.log(2/0);//输出Infinity
var a=1;va b=2;
//计算数值a+数值b的值后输出
console.log(a+b);//3
//将数值变量a与数值变量b转换为字符串后使用+运算链接后输出
console.log(a.toString()+b.toString());//12
var a=1;va b="2";
//将数值与字符串相加后输出
console.log(a+b);//将数值转换为字符串后与其他字符串想链接,输出12
var a=1;va b=2;
console.log(a==b);//比较运算符,输出false
console.log(a==1&&b==2);//使用逻辑运算符,输出true
可以使用console.info方法代替console.log方法,两者作用和使用方法相同。
2.console.error方法
用于进行标准错误输出流的输出。
console.error("This is an error");
也可保存在文件中,调用执行。
node error.js
在默认情况下,标准错误输出流将被输出至控制台,可以将它重定向输出到文件中。
node error.js 2>info.log
//2代表重定向标准错误输出流
可以在console.error方法中通过参数指定输出字符串格式,参照console.log方法。
console.warn方法可代替concole.error方法,这两个方法的作用和方法一致。
3.console.dir方法
用于查看一个对象中的内容并且将该对象的内容输出到控制台。
var user=new Object();
user.name="x";
user.getName=function(){ return this.name};
user.setName=function(name){this.name=name};
console.dir(user);
将上段代码保存在user.js文件中,运行即可
node user.js
4.console.time方法和console.timeEnd方法
用于统计一段代码执行的时间,单位毫秒。
console.time()标记时间开始,console.timeEnd()标记时间结束。两个方法使用一个参数,参数可以是任意字符串。
console.time('timer');
for(var i=0;i<100000;i++){
;
}
console.timeEnd('timer');
将代码保存到timer.js中,运行查看。
5.console.trace方法
用于将当前位置处的栈信息作为标准错误信息输出。
console.trace(lable);
方法的参数可以为任意字符串,用于标识此处标准错误信息。
var user=new Object();
user.name="x";
user.getName=function(){ return this.name};
user.setName=function(name){this.name=name};
console.trace('trace');
将以上代码保存到trace.js,运行。
6.console.assert方法
用于对一个表达式的执行结果进行评估,若结果为false,则输出一个消息字符串并抛出AssertionError异常。
//在REPL环境下,评估“1==22”的执行结果,执行结果为false,所以输出“false”,并抛出AssertionError异常。
console.aeert(1==22,"false");