Maison > interface Web > js tutoriel > À propos de la sélection dynamique d'objets JavaScript et des compétences de parcours d'objets_javascript

À propos de la sélection dynamique d'objets JavaScript et des compétences de parcours d'objets_javascript

WBOY
Libérer: 2016-05-16 16:55:59
original
1099 Les gens l'ont consulté

(1) Sélection dynamique des méthodes et des attributs

Dans le travail réel, on rencontre souvent cette situation : appeler l'une des deux méthodes [1] selon une certaine condition, ou entre deux attributs Des opérations de lecture et d'écriture sont effectuées sur l'un des [2]. Le code suivant montre cette situation :

Copier le code Le code est le suivant :

if ( condition ) {
myObj.method1(someArg);
} else {
myObj.method2(someArg);
}

JavaScript fournit une syntaxe simple, c'est-à-dire , utilisez l'opérateur crochet ([]) pour sélectionner dynamiquement les méthodes et les propriétés. Comme le montre le code suivant, JavaScript a deux syntaxes d'accès aux membres équivalentes (cette fonctionnalité est courante dans les langages dynamiques) :
obj[expressionResultingInMembername] == obj.memberName

Si vous avez utilisé l'indice Integer pour accéder à un élément du tableau, vous avez alors commencé à utiliser l'opérateur crochet pour la sélection dynamique des membres. En effet, l'objet tableau lui-même contient des propriétés nommées avec des indices numériques (ainsi que la propriété length). Cependant, JavaScript ne vous permet pas d'accéder directement à ces propriétés à l'aide de l'opérateur point (.), donc myArray.0 est syntaxiquement illégal (ce qui est dommage, car c'est une syntaxe sympa).
Pourquoi l'opérateur crochet est-il plus puissant que la notation d'opérateur point ? En effet, vous pouvez accéder aux membres d'un objet en utilisant tout ce qui représente un nom de membre entre crochets. Ceux-ci incluent des littéraux, des variables contenant des noms de membres, des combinaisons de noms (dans la plupart des cas, une concaténation de chaînes) et une sélection rapide si/alors à l'aide de l'opérateur ternaire (condition ? valueIfTrue : valueIfFalse). Tout ce contenu sera traité en chaîne, puis JavaScript utilisera cette chaîne pour trouver le membre correspondant.
Étant donné que les fonctions en JavaScript sont elles-mêmes des objets, elles peuvent être référencées comme d'autres valeurs. Si le résultat d’une expression est une fonction, vous pouvez l’appeler directement à l’aide de l’opérateur parenthèses, tout comme vous appelleriez une fonction directement à l’aide de son nom.
Il est à noter que si vous utilisez beaucoup de ces techniques sur les paramètres passés à la méthode, les parenthèses confuses peuvent rendre le code difficile à lire. Dans ce cas, il est plus judicieux d'utiliser le if/else régulier. structure.

(2) JavaScript traverse les propriétés et les méthodes de l'objet

JavaScript utilise l'instruction for in pour parcourir les propriétés et les méthodes de l'objet. L'instruction for in parcourt l'objet JavaScript. Chaque fois qu'elle boucle, elle obtiendra une propriété ou une méthode de l'objet.

Syntaxe :
Copier le code Le code est le suivant :

pour (valueName in ObjectName){
// Code
}

Parmi eux, valueName est le nom de la variable, qui enregistre le nom de l'attribut ou de la méthode. La valeur de valueName changera. à chaque fois ça boucle.
Étiquettes associées:
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