Maison > interface Web > Questions et réponses frontales > Comment obtenir le nom de l'objet dans nodejs

Comment obtenir le nom de l'objet dans nodejs

PHPz
Libérer: 2023-04-17 17:23:23
original
970 Les gens l'ont consulté

Node.js est un langage de programmation backend très populaire qui peut être utilisé pour écrire des applications Web, des serveurs Web, des applications en ligne de commande, etc. Dans Node.js, nous avons souvent besoin d'obtenir certaines de ses propriétés ou méthodes en analysant l'objet transmis, il est donc également très important d'obtenir le nom de l'objet. Ensuite, cet article présentera plusieurs méthodes pour obtenir le nom de l'objet.

1. Utilisez le mot-clé typeof

En JavaScript, vous pouvez utiliser le mot-clé typeof pour obtenir le type d'une variable, et les objets ne font pas exception. Nous pouvons utiliser l'opérateur typeof pour déterminer si un objet est un type d'objet. Si tel est le cas, nous pouvons utiliser sa méthode toString pour obtenir le nom de l'objet.

var obj = {name:'Node.js'};
console.log(typeof obj);    // 输出 "object"
console.log(obj.toString());    // 输出 "[object Object]"
Copier après la connexion

Comme le montre le code ci-dessus, l'opérateur typeof est utilisé pour déterminer que le type d'obj est objet. Le nom de classe d'obj est Object, donc son résultat de sortie est "[object Object]".

En plus d'utiliser directement le mot-clé typeof pour déterminer le type d'objet, nous pouvons également encapsuler le processus d'obtention du nom de l'objet en encapsulant une couche de fonctions pour rendre le code plus lisible et concis.

function getObjectName(obj) {
    return Object.prototype.toString.call(obj).slice(8, -1);
}

var obj = {name:'Node.js'};
console.log(getObjectName(obj));    //输出 "Object"
Copier après la connexion

La fonction getObjectName ci-dessus encapsule le processus d'obtention du nom de l'objet. Nous lui passons un objet obj. Elle obtient d'abord le nom de la classe à laquelle obj appartient via Object.prototype.toString.call(obj), puis obtient le nom de la classe à laquelle obj appartient. nom de classe via la méthode slice. La sous-chaîne de la chaîne est le nom de l'objet que nous voulons.

2. Utilisez l'attribut constructeur

En JavaScript, chaque fonction a un attribut constructeur, grâce auquel nous pouvons obtenir le constructeur de la fonction, afin que nous puissions obtenir le nom de l'objet via l'attribut constructeur de l'objet. Voici un exemple :

function Person(name, age) {
    this.name = name;
    this.age = age;
}

var p = new Person('Tom', 18);
console.log(p.constructor.name);    // 输出 "Person"
Copier après la connexion

Dans le code ci-dessus, nous définissons une fonction Person, puis créons un objet p via le nouveau mot-clé. Ensuite, nous pouvons obtenir le nom du constructeur de l'objet via p.constructor.name. Personne".

Il est très simple d'utiliser l'attribut constructeur pour obtenir le nom de l'objet, mais veuillez noter que cette méthode n'est applicable qu'aux objets créés via le constructeur et n'est pas valable pour les objets généraux.

3. Utilisez la méthode Object.keys()

La méthode Object.keys() peut obtenir le nom des propres attributs d'un objet, si nous connaissons déjà le nom de l'attribut d'un objet, alors nous pouvons obtenir le nom de l'attribut de l'objet. via le nom de l'attribut. La valeur de l'attribut, obtenant ainsi le nom de l'objet. Par exemple :

var obj = {
    name: "Tom",
    age: 18
};

var propName = Object.keys(obj)[0];
console.log(propName);    // 输出 "name"
console.log(obj[propName]);    // 输出 "Tom"
Copier après la connexion

Dans le code ci-dessus, nous utilisons d'abord la méthode Object.keys() pour obtenir le tableau de noms d'attribut de l'objet obj, puis nous utilisons l'indice du tableau pour obtenir le nom du premier attribut (c'est-à-dire " name"). Utilisez ensuite obj["name"] pour obtenir la valeur de l'attribut (c'est-à-dire "Tom").

Il convient de noter que cette méthode ne s'applique que lorsque l'objet n'a qu'un seul attribut. Si l'objet a plusieurs attributs, le nom de l'objet ne peut pas être obtenu avec précision.

4. Utilisez la méthode Object.prototype.toString()

La méthode Object.prototype.toString() peut renvoyer une représentation sous forme de chaîne d'un objet. La méthode spécifique est similaire à la façon dont l'opérateur typeof obtient le nom de l'objet. Nous pouvons également l'utiliser pour obtenir le nom d'un objet.

var obj = {name: "Node.js"};
console.log(Object.prototype.toString.call(obj));    // 输出 "[object Object]"
Copier après la connexion

Dans le code ci-dessus, nous obtenons la représentation sous forme de chaîne de l'objet via Object.prototype.toString.call(obj), puis nous pouvons analyser le nom de l'objet à partir de la chaîne.

Il est à noter que cette méthode n'est également applicable que lorsque l'objet n'a qu'un seul attribut.

5. Résumé

Dans la programmation Node.js, nous avons souvent besoin d'obtenir le nom de l'objet. Cet article présente quatre méthodes couramment utilisées pour obtenir le nom de l'objet :

  • Utilisez le mot-clé typeof
  • .
  • Utilisez les attributs du constructeur
  • Utilisez la méthode Object.keys()
  • Utilisez la méthode Object.prototype.toString()

Vous devez choisir la méthode appropriée en fonction de la situation spécifique pour obtenir le meilleur effet d'utilisation. J'espère que cet article vous sera utile.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal