util.inspect
util.inspect是一个将任意对象转换 为字符串的方法,通常用于调试和错误输出。
它至少接受一个参数 object,即要转换的对象。
util.inspect(object,[showHidden],[depth],[colors])
参数使用说明如下:
-
object - 需要转换的对象。
-
showHidden - 一 个可选参数,如果值为 true,将会输出更多隐藏信息。
-
depth - 表示最大递归的层数。如果不指定depth,默认会递归2层,指定为 null 表示将不限递归层数完整遍历对象。
-
colors - 倘若值为 true,输出格式将会以ANSI 颜色编码,通常用于在终端显示更漂亮的效果。
特别要指出的是,util.inspect 并不会简单地直接把对象转换为字符串,即使该对象定义了toString方法也不会调用。
utiltest.js
1 var util = require('util'); 2 function Person() { 3 this.name = 'byvoid'; 4 this.toString = function() { 5 return this.name; 6 }; 7 } 8 var obj = new Person(); 9 console.log(util.inspect(obj)); 10 console.log(util.inspect(obj, true));
结果如下: