Latest web development tutorials

Node.js gemeinsame Instrumente

util Node.js ist ein Kernmodul, das eine Sammlung von häufig verwendeten Funktionen zur Verfügung stellt, verwendet, um den Kern JavaScript bilden zu unzureichend optimierte Funktionen.


util.inherits

util.inherits (Konstruktor Superkonstruktor) ist eine Implementierung eines Funktionsprototyp Vererbung zwischen Objekten.

Objektorientierte Features von JavaScript ist eine Prototyp-basiert, im Gegensatz zu der gemeinsamen Klasse basiert. JavaScript bietet keine Sprachebene Objekte Eigenschaften erben, sondern durch den Prototyp Kopieren zu erreichen.

Hier stellen wir nur util.inherits Verwendungsbeispiele sind wie folgt:

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'; 
} 
util.inherits(Sub, Base); 
var objBase = new Base(); 
objBase.showName(); 
objBase.sayHello(); 
console.log(objBase); 
var objSub = new Sub(); 
objSub.showName(); 
//objSub.sayHello(); 
console.log(objSub); 

Wir definieren ein Basisobjekt erbt von Basis und Basis eines Sub, Basisfunktionen haben drei Attribute im Konstruktor und ein Prototyp durch Vererbung util.inherits definiert definiert. Ergebnisse sind wie folgt:

base 
Hello base 
{ name: 'base', base: 1991, sayHello: [Function] } 
sub 
{ name: 'sub' }

Hinweis: Nur Sub Base die Funktionen geerbt im Prototyp definiert, und die innere Struktur und Funktion , um die Basis zu schaffen Attribut sayHello Funktion nicht Sub vererbt worden.

Inzwischen können die Eigenschaften im Prototyp nicht als Objekt der Eigenschaft console.log Ausgang definiert werden. Wenn wir objSub.sayHello () entfernen; diese Zeile Kommentar, werden Sie sehen:

node.js:201 
throw e; // process.nextTick error, or 'error' event on first tick 
^ 
TypeError: Object #<Sub> has no method 'sayHello' 
at Object.<anonymous> (/home/byvoid/utilinherits.js:29:8) 
at Module._compile (module.js:441:26) 
at Object..js (module.js:459:10) 
at Module.load (module.js:348:31) 
at Function._load (module.js:308:12) 
at Array.0 (module.js:479:10) 
at EventEmitter._tickCallback (node.js:192:40) 

util.inspect

util.inspect (Objekt, [showhidden], [Tiefe], [Farben]) ist ein beliebiges Objekt in einen String-Methode, in der Regel verwendet für die Fehlersuche und Fehlerausgabe. Er nimmt ein Objekt mindestens ein Parameter-Objekt, das heißt, zu konvertieren.

showhidden ist ein optionaler Parameter, wenn sie wahr ist, wird der Ausgang mehr versteckte Informationen sein wird.

Maximale Rekursionstiefe gibt die Anzahl der Schichten, wenn das Objekt komplex ist, können Sie angeben, wie viele Schichten, die die Ausgabe von Informationen zu kontrollieren. Wenn Sie nicht angeben angegeben eine Tiefe, rekursive Standard-Layer-2 zeigt eine begrenzte als null rekursiv die intakten Objektschichten durchqueren. Wenn die Farbe wahr ist, das Ausgabeformat in ANSI Farbcodierung sein wird, wird es im allgemeinen für ein schöneres Wirkung auf das Terminal verwendet.

Besonders zu beachten ist, dass, util.inspect nicht einfach direkt auf das Objekt in eine Zeichenfolge, auch wenn das Objekt die toString Methode definiert ist ebenfalls nicht genannt.

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

Betriebs Ergebnisse sind:

{ name: 'byvoid', toString: [Function] } 
{ toString: 
{ [Function] 
[prototype]: { [constructor]: [Circular] }, 
[caller]: null, 
[length]: 0, 
[name]: '', 
[arguments]: null }, 
name: 'byvoid' } 

util.isArray (Objekt)

Wenn der angegebene Parameter "Objekt" ist ein Array return true, andernfalls wird false zurückgegeben.

var util = require('util');

util.isArray([])
  // true
util.isArray(new Array)
  // true
util.isArray({})
  // false

util.isRegExp (Objekt)

Wenn der angegebene Parameter "Objekt" ist wieder ein regulärer Ausdruck wahr ist, andernfalls false.

var util = require('util');

util.isRegExp(/some regexp/)
  // true
util.isRegExp(new RegExp('another regexp'))
  // true
util.isRegExp({})
  // false

util.isDate (Objekt)

Wenn der angegebene Parameter "Objekt" ist ein Datum gibt true zurück, andernfalls false.

var util = require('util');

util.isDate(new Date())
  // true
util.isDate(Date())
  // false (without 'new' returns a String)
util.isDate({})
  // false

util.isError (Objekt)

Wenn der angegebene Parameter "Objekt" ist ein Fehler Objekt gibt true zurück, andernfalls false.

var util = require('util');

util.isError(new Error())
  // true
util.isError(new TypeError())
  // true
util.isError({ name: 'Error', message: 'an error occurred' })
  // false

Weitere Details finden Sie zugegriffen werden http://nodejs.org/api/util.html für weitere Einzelheiten.