Le meilleur didacticiel Node.js outils communs en 2024, dans ce didacticiel, vous pouvez apprendre util.inherits,util.inspect,util.isArray (objet),util.isRegExp (objet),util.isDate (objet),util.isError (objet),
util Node.js est un module de base qui fournit un ensemble de fonctions couramment utilisées, utilisés pour constituer le noyau JavaScript fonctions simplifiées trop insuffisantes.
util.inherits (constructeur, superconstructeur) est une implémentation d'un héritage de prototype de fonction entre les objets.
fonctionnalités orientées objet de JavaScript est un basé sur des prototypes, à la différence de classes de la commune. JavaScript ne fournit pas des objets de niveau de langue héritent des propriétés, mais en copiant le prototype à atteindre.
Ici, nous ne présentons util.inherits exemples d'utilisation sont les suivantes:
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);
Nous définissons un objet de base hérite de la base et la base d'un sous, les fonctions de base ont trois attributs définis dans le constructeur et un prototype défini par util.inherits d'héritage. Les résultats sont les suivants:
base Hello base { name: 'base', base: 1991, sayHello: [Function] } sub { name: 'sub' }
Remarque: Sous base seulement hérité des fonctions définies dans le prototype et la structure interne et la fonction pour créer la base d' attribut sayHello fonction n'a pas été sous hérité.
Pendant ce temps, les propriétés du prototype ne peuvent pas être définis comme un objet de la production des biens de console.log. Si on enlève objSub.sayHello (); commenter cette ligne, vous verrez:
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 Objectfrjs (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 (objet, [showHidden], [profondeur], [couleurs]) est un objet arbitraire à une méthode de chaîne, généralement utilisé pour le débogage et la sortie d'erreur. Il accepte un objet au moins un objet de paramètre, qui est, pour convertir.
showHidden est un paramètre optionnel, si elle est vraie, la sortie sera des informations plus cachée.
Profondeur maximale de récursivité indique le nombre de couches, si l'objet est complexe, vous pouvez spécifier le nombre de couches pour contrôler la sortie des informations. Si vous ne spécifiez pas une profondeur, la couche récursive par défaut 2, montre une limitée spécifiée comme nulle traverse récursivement les couches d'objets intacts. Si la couleur est vrai, le format de sortie sera en ANSI codage couleur, il est généralement utilisé pour un plus bel effet sur le terminal.
On notera en particulier est que, non seulement util.inspect directement à l'objet à une chaîne, même si l'objet définit la méthode toString est pas non plus appelé.
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));
Les résultats d'exploitation sont:
{ name: 'byvoid', toString: [Function] } { toString: { [Function] [prototype]: { [constructor]: [Circular] }, [caller]: null, [length]: 0, [name]: '', [arguments]: null }, name: 'byvoid' }
Si le paramètre «objet» donné est un vrai retour de tableau, sinon il retourne faux.
var util = require('util'); util.isArray([]) // true util.isArray(new Array) // true util.isArray({}) // false
Si le paramètre «objet» donné est une expression régulière renvoie true, sinon retourne false.
var util = require('util'); util.isRegExp(/some regexp/) // true util.isRegExp(new RegExp('another regexp')) // true util.isRegExp({}) // false
Si le paramètre «objet» donné est une date renvoie true, sinon retourne false.
var util = require('util'); util.isDate(new Date()) // true util.isDate(Date()) // false (without 'new' returns a String) util.isDate({}) // false
Si le paramètre «objet» donné est un objet d'erreur renvoie true, sinon retourne false.
var util = require('util'); util.isError(new Error()) // true util.isError(new TypeError()) // true util.isError({ name: 'Error', message: 'an error occurred' }) // false
Plus de détails peuvent être consultés http://nodejs.org/api/util pour plus de détails.