Maison > interface Web > js tutoriel > le corps du texte

Comment lister toutes les méthodes d'un objet en JavaScript ?

Patricia Arquette
Libérer: 2024-10-19 16:17:02
original
548 Les gens l'ont consulté

How to List All Methods of an Object in JavaScript?

Liste de toutes les méthodes d'un objet

En JavaScript, vous pouvez énumérer les méthodes d'un objet à l'aide de la méthode Object.getOwnPropertyNames(). Cependant, vous pouvez également filtrer les propriétés non liées à la méthode, afin de vous assurer d'obtenir uniquement la fonctionnalité souhaitée.

Object.getOwnPropertyNames()

Object.getOwnPropertyNames( ) renvoie un tableau de toutes les propriétés (énumérables et non énumérables) qui appartiennent à un objet donné. Par exemple :

console.log(Object.getOwnPropertyNames(Math));
//-> ["E", "LN10", "LN2", "LOG2E", "LOG10E", "PI", ...etc ]
Copier après la connexion

Méthodes de filtrage

Pour obtenir uniquement les méthodes, vous pouvez combiner Object.getOwnPropertyNames() avec la méthode filter() :

console.log(Object.getOwnPropertyNames(Math).filter(function (p) {
    return typeof Math[p] === 'function';
}));
//-> ["random", "abs", "acos", "asin", "atan", "ceil", "cos", "exp", ...etc ]
Copier après la connexion

Compatibilité du navigateur ES3

Dans les navigateurs ES3 (tels que IE 8 ou version antérieure), les propriétés d'objet intégrées ne sont pas énumérables, à l'exception de celles définies par le navigateur lui-même. (par exemple, fenêtre, document). Par conséquent, l'utilisation de l'approche ci-dessus ne capturera pas toutes les méthodes dans ces environnements.

Bogue IE avec { DontEnum }

Dans Internet Explorer, il existe un bug qui le provoque pour ignorer les propriétés avec l'attribut { DontEnum } dans un objet s'il existe une propriété du même nom dans la chaîne de prototypes qui a également { DontEnum }. Cela signifie qu'il est essentiel de nommer soigneusement les propriétés des objets lorsque vous travaillez avec IE pour éviter des problèmes potentiels.

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
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!