node 核心模組util
阿新 • • 發佈:2018-12-12
inherits 方式繼承物件
/** * * nodejs 核心模組之util * 主要提供常用函式集合,彌補核心JavaScript的功能過於精簡的不足。 * */ var util = require('util'); //inherits 實現物件原型繼承 function Base() { this.name = 'base'; this.hello = function () { console.log('htllo'); } } Base.prototype.age = 20; Base.prototype.myName = function () { console.log(this.name); } function Sub() { } //繼承原型 util.inherits(Sub, Base); var objBase = new Base(); objBase.myName(); var subBase = new Sub(); subBase.myName(); console.log(subBase.age); subBase.hello();
執行結果
注:上面的程式碼和執行結果說明在使用interits這種方式 繼承僅僅繼承了物件在原型中定義的函式和屬性,而建構函式內部的原型和輸出並未被繼承。
inspect 物件轉字串
加入程式碼
/**
*
* inspect 物件轉字串
*
*
*/
console.log(util.inspect(objBase, true, null, true));
console.log(util.inspect(subBase, true, null, true));
執行結果:
結果中只有構造物件被輸出,原型物件沒被輸出。
引數釋義:
- obj 要轉換的物件
- showhidden 是否顯示隱藏的資訊
- depth 表示遞迴層數,預設2,可以指定,如果為null就會遍歷整個物件資訊輸出。
- colors 如果為true 輸出格式將以ANSI顏色編碼
其他函式
- isArray 判斷物件是否為一個數組
- isRegExp 判斷引數是否為一個正則表示式
- isDate 判斷物件是否為一個日期
- isError 判斷物件是否為一個錯誤物件