Node.js 工具函数

学习要点

  • util.inherits
  • util.inspect
  • util.isArray(object)
  • util.isRegExp(object)
  • util.isDate(object)
  • util.isError(object)

Node.js 常用工具
util是Node.js核心模块,提供常用函数的集合

1.util.inherits(constructor, superConstructor)
是一个实现对象原型继承的函数

案例:inherits.js

var util = require('util');
function Base () {
    this.name = 'base';
    this.base = 1991;
    this.sayHello = function () {
        console.log('Hello ' + this.name);
    };
}
Base.prototype.showName = function () {
    console.log(this.name);
};
function Sub () {
    this.name = 'sub';
};
// PS : Sub仅仅继承了Base在原型中定义的函数,
// 这里即为showName()方法,
// 而构造函数内部创造的base属性和sayHello 函数都没有被Sub继承
util.inherits(Sub, Base);
var objBase = new Base();
objBase.showName();
objBase.sayHello();
console.log(objBase);
var objSub = new Sub();
console.log(objSub);
objSub.showName();

2.util.inspect(object,[showHidden],[depth],[colors])
将一个对象转换为字符串的方法

参数:
    object - 要转换为字符串的对象
    showHidden - 如果为true,将会输出更多隐藏信息
    depth - 表示最大递归的层数
    colors - 如果为true, 输出格式将会以ANSI颜色编码

案例:inspect.js

var util = require('util');
function Person () {
    this.name = 'zhang';
    this.toString = function () {
        return this.name;
    }
}
var obj = new Person();
console.log(util.inspect(obj));
console.log(util.inspect(obj, true));

3.类型检测

util.isArray(oject)
util.isRegExp(object)
util.isDate(object)
util.isError(object)

案例:checkType.js

var util = require('util');
// 判断数组
console.log(util.isArray([]));
// 判断正则
console.log(util.isRegExp(new RegExp('abc')));
// 判断日期
console.log(util.isDate(new Date()));
// 判断错误
console.log(util.isError(new Error()));

这里写图片描述

你可能感兴趣的:(继承,node.js,工具函数,类型检测,转换字符串)