/*
Nodejs常用工具
util是一个Nodejs核心模块,提供常用的函数的集合,用于弥补核心javascript的功能过于精简的不足
util.inherits是一个实现对象之间原型继承的函数
var util= require("util");
function Base(){
this.name = "zs";
this.base = "1991";
this.sayHello = function(){
console.log("hello"+this.name);
};
}
Base.prototype.showName=function(){
console.log(this.name);
}
function Sub (){
this.name = 'sub';
}
util.inherits(Sub,Base);
var objBase = new Base();
objBase.showName();
objBase.sayHello();
console.log(objBase);
var objSub= new Sub();
objSub.showName();
console.log(objSub);
需要注意一点的是:sub只会继承base原型中定义的函数,而构造函数创造的base属性和方法是不能被继承的
util.inspect(object,[showHidden],[depth],[colors])是一个将任意对象转化为字符串的方法,通常用于调试和
错误输出。它至少接受一个参数object,既要转换的对象
showHidden 是一个可选参数,如果值为true,将会输出更多的隐藏信息
depth表示是一个可选参数,如果对象很复杂,你可以指定层数以控制输出信息的多少。如果不指定depth,默认会递归2层
指定为null表示将不限递归层数完整遍历对象,如果color值为true,格式输出将会以ANSI颜色编码,通常用于在终端显示更
漂亮的效果
注意:
util.inspect并不会简单地直接把对象转换为字符串,即使该对象定义了toString方法也不会调用
栗子:
var util= require("util");
function Person(){
this .name = "sad";
this.toString= function(){
return this.name;
};
}
var obj = new Person();
console.log(util.inspect(obj));
console.log(util.inspect(obj,true));
util.isArray(object),如果给定的参数“object”是一个数组返回true,否则返回false
util.isRegExp(obj),如果参数是正则表达式则返回true,否则返回false
util.isDate(obj),如果参数是日期返回true,否则返回false
util.isError,如果参数为一个错误的对象则返回true,否则返回false
*/
Nodejs常用工具
util是一个Nodejs核心模块,提供常用的函数的集合,用于弥补核心javascript的功能过于精简的不足
util.inherits是一个实现对象之间原型继承的函数
var util= require("util");
function Base(){
this.name = "zs";
this.base = "1991";
this.sayHello = function(){
console.log("hello"+this.name);
};
}
Base.prototype.showName=function(){
console.log(this.name);
}
function Sub (){
this.name = 'sub';
}
util.inherits(Sub,Base);
var objBase = new Base();
objBase.showName();
objBase.sayHello();
console.log(objBase);
var objSub= new Sub();
objSub.showName();
console.log(objSub);
需要注意一点的是:sub只会继承base原型中定义的函数,而构造函数创造的base属性和方法是不能被继承的
util.inspect(object,[showHidden],[depth],[colors])是一个将任意对象转化为字符串的方法,通常用于调试和
错误输出。它至少接受一个参数object,既要转换的对象
showHidden 是一个可选参数,如果值为true,将会输出更多的隐藏信息
depth表示是一个可选参数,如果对象很复杂,你可以指定层数以控制输出信息的多少。如果不指定depth,默认会递归2层
指定为null表示将不限递归层数完整遍历对象,如果color值为true,格式输出将会以ANSI颜色编码,通常用于在终端显示更
漂亮的效果
注意:
util.inspect并不会简单地直接把对象转换为字符串,即使该对象定义了toString方法也不会调用
栗子:
var util= require("util");
function Person(){
this .name = "sad";
this.toString= function(){
return this.name;
};
}
var obj = new Person();
console.log(util.inspect(obj));
console.log(util.inspect(obj,true));
util.isArray(object),如果给定的参数“object”是一个数组返回true,否则返回false
util.isRegExp(obj),如果参数是正则表达式则返回true,否则返回false
util.isDate(obj),如果参数是日期返回true,否则返回false
util.isError,如果参数为一个错误的对象则返回true,否则返回false
*/