Points clés
Les objets JavaScript sont la pierre angulaire de la langue. De nombreux types de données intégrés (tels que des erreurs, des expressions régulières et des fonctions) sont représentés comme des objets en JavaScript. Pour être un développeur JavaScript réussi, vous devez avoir une bonne compréhension du fonctionnement des objets. Cet article vous apprendra les bases de la création et de la manipulation d'objets JavaScript. Les objets sont des types de données composites, construits à partir de primitives et autres objets. Le bloc de construction d'un objet est souvent appelé son champ ou attribut . Les attributs sont utilisés pour décrire certains aspects d'un objet. Par exemple, les attributs peuvent décrire la durée de la liste, la couleur du chien ou la date de naissance d'une personne.
Créer un objet
La création d'objets en JavaScript est facile. Le langage fournit une syntaxe appelée objet Notation littérale pour créer rapidement des objets. Le texte de l'objet est représenté en accolades. L'exemple suivant crée un objet vide sans attributs.
var object = {};
En accolades, l'attribut et ses valeurs sont spécifiés comme une liste de paires de clés / valeur. La clé peut être une chaîne ou un identifiant, tandis que la valeur peut être n'importe quelle expression valide. La liste des paires de clés / valeur est séparée par des virgules, et chaque clé et valeur est séparée par un côlon. L'exemple suivant utilise la notation littérale pour créer un objet avec trois attributs. Le premier attribut FOO stocke le numéro 1. La deuxième barre d'attribut est spécifiée à l'aide d'une chaîne et stocke également la valeur de chaîne. La troisième propriété Baz stocke un objet vide.
var object = { foo: 1, "bar": "some string", baz: { } };
Veuillez prêter attention à l'utilisation des espaces dans l'exemple précédent. Chaque attribut est écrit sur une ligne séparée et en retrait. L'objet entier peut être écrit sur une seule ligne, mais le code écrit dans ce format est plus facile à lire. Cela est particulièrement vrai pour les objets avec de nombreuses propriétés ou des objets imbriqués.
Attributs d'accès
JavaScript fournit deux notations d'accès aux propriétés des objets. La première et la plus courante est appelée notation ponctuelle . En notation de points, la propriété est accessible en donnant le nom de l'objet hôte, suivi d'une période (ou d'un point), puis du nom de la propriété. L'exemple suivant montre comment lire et écrire des propriétés en utilisant la notation ponctuelle. Si la valeur stockée initiale de l'objet.foo est 1, sa valeur deviendra 2 après l'exécution de cette instruction. Notez que si object.foo n'a pas encore de valeur, il ne sera pas défini.
var object = {};
Une autre syntaxe pour accéder aux propriétés des objets est appelée Notation du support carré . En notation carrée, le nom de l'objet est suivi d'un ensemble de crochets. Dans les crochets, le nom de la propriété est spécifié sous forme de chaîne. L'exemple de la notation ponctuelle précédente a été réécrit ci-dessous pour utiliser la notation du support carré. Bien que le code puisse être différent, il est fonctionnellement équivalent à l'exemple précédent.
var object = { foo: 1, "bar": "some string", baz: { } };
La notation du support carré est plus expressive que la notation de points car elle permet aux variables de spécifier tout ou partie du nom d'attribut. Cela est possible car l'interpréteur JavaScript convertit automatiquement les expressions entre crochets en chaînes, puis récupère les propriétés correspondantes. L'exemple suivant montre comment créer dynamiquement des noms d'attribut à l'aide de la notation de support carré. Dans cet exemple, le nom d'attribut FOO est créé en concaténant le contenu de la variable F avec la chaîne "OO".
object.foo = object.foo + 1;
La notation du support carré permet également aux noms d'attribut de contenir des caractères interdits en notation de points. Par exemple, la déclaration suivante est complètement légale en notation carrée. Cependant, si vous essayez de créer le même nom de propriété dans la notation DOT, vous rencontrerez une erreur de syntaxe.
object["foo"] = object["foo"] + 1;
Les propriétés des objets imbriqués peuvent être accessibles en reliant les points et / ou les références de support carré ensemble. Par exemple, l'objet suivant contient un objet imbriqué nommé Baz, qui contient un autre objet nommé FOO, qui a une propriété nommée Bar qui stocke la valeur 5.
var f = "f"; object[f + "oo"] = "bar";
L'expression suivante accède à la barre de propriété imbriquée. La première expression utilise la notation de points, tandis que la deuxième expression utilise la notation du support carré. La troisième expression combine deux notations pour obtenir le même résultat.
object["!@#$%^&*()."] = true;
Les expressions comme celles indiquées dans les exemples précédents peuvent provoquer une dégradation des performances si elles sont utilisées de manière incorrecte. Il faut du temps pour évaluer chaque expression point ou support carré. Si vous utilisez la même propriété plusieurs fois, il est préférable d'accéder à la propriété qu'une seule fois, puis de stocker la valeur dans une variable locale à utiliser à toutes fins futures. L'exemple suivant utilise la barre plusieurs fois dans une boucle. Cependant, au lieu de perdre du temps à calculer la même valeur encore et encore, stockez la barre dans une variable locale.
var object = { baz: { foo: { bar: 5 } } };
Fonctionne comme méthode
Lorsqu'une fonction est utilisée comme propriété d'objet, elle est appelée la méthode . Comme les propriétés, les méthodes peuvent également être spécifiées dans la notation littérale d'objet. L'exemple suivant montre comment y parvenir.
object.baz.foo.bar; object["baz"]["foo"]["bar"]; object["baz"].foo["bar"];
peuvent également être appelées en utilisant la notation de points et la notation du support carré. L'exemple suivant utilise ces deux notations pour appeler la méthode SUM () dans l'exemple précédent.
var object = {};
Ajouter des attributs et des méthodes
La notation littérale des objets est utile pour créer de nouveaux objets, mais il ne peut pas ajouter de propriétés ou de méthodes aux objets existants. Heureusement, l'ajout de nouvelles données à un objet est aussi simple que la création d'une instruction d'affectation. L'exemple suivant crée un objet vide. Utilisez ensuite l'instruction Affectation pour ajouter deux attributs FOO et BAR et une méthode baz. Notez que cet exemple utilise la notation du point, mais la notation du support carré est tout aussi efficace.
var object = { foo: 1, "bar": "some string", baz: { } };
Conclusion
Cet article présente la connaissance de base de la syntaxe d'objets JavaScript. Il est crucial de maîtriser ces contenus car il constitue la base du reste de la langue. Ils disent que vous devez apprendre à marcher avant de pouvoir courir. Ensuite, dans le monde de JavaScript, vous devez d'abord comprendre les objets pour comprendre la programmation orientée objet.
Des questions fréquemment posées sur la syntaxe des objets JavaScript (FAQ)
Dans JavaScript, les objets sont des collections de paires de valeurs clés. Vous pouvez accéder à ces valeurs en utilisant la notation de points ou la notation du support carré. La représentation DOT est plus directe et plus facile à lire. Utilisez-le lorsque vous connaissez le nom de la propriété. Par exemple, si vous avez un objet nommé "Person" qui a une propriété nommée "Nom", vous pouvez y accéder comme ceci: Person.name.
D'un autre côté, les crochets sont plus flexibles. Il vous permet d'accéder aux propriétés à l'aide de variables ou de noms d'attribut qui peuvent ne pas être des identificateurs valides. Par exemple, si le nom de la propriété contient des espaces ou des caractères spéciaux, ou c'est un nombre, vous pouvez y accéder comme ceci: personne ['Nom de la propriété'].
Vous pouvez ajouter des propriétés à un objet JavaScript existant en utilisant la notation DOT ou la notation du support carré. Pour la notation ponctuelle, vous avez juste besoin d'utiliser la valeur de syntaxe.property = valeur. Pour la notation du support carré, la syntaxe est objet ['propriété'] = valeur. Dans les deux cas, si la propriété n'existe pas dans l'objet, elle est ajoutée.
Vous pouvez utiliser l'opérateur "Supprimer" pour supprimer les propriétés des objets JavaScript. La syntaxe de l'opérateur «Supprimer» est de supprimer l'objet.Property pour la notation ponctuelle et l'objet supprimé ['propriété'] pour la notation du support carré. Cela supprimera l'attribut et sa valeur de l'objet.
est une fonction stockée comme une propriété d'objet. Ils sont utilisés pour effectuer des opérations qui utilisent des données d'objet. Vous pouvez définir des méthodes dans un objet utilisant la syntaxe de fonction comme suit: object.methodname = function () {/ code /}.
Vous pouvez utiliser la boucle "pour ... dans" pour itérer les propriétés des objets JavaScript. Cette boucle iratera les propriétés ainsi énumérées de l'objet, y compris les propriétés héritées de la chaîne prototype. La syntaxe est la suivante: pour (propriété var dans l'objet) {/ code /}.
Le mot-clé "ce" dans un objet JavaScript fait référence à l'objet à lequel il appartient. À l'intérieur de la méthode, "ce" fait référence à l'objet propriétaire. Dans le constructeur, «ce» fait référence à l'objet nouvellement créé.
Les constructeurs de JavaScript sont des fonctions spéciales utilisées pour créer des objets du même type. Ils sont nommés en majuscules pour les distinguer des fonctions ordinaires. Le mot-clé "nouveau" est utilisé pour appeler le constructeur et créer un nouvel objet.
Chaque objet JavaScript a un prototype. Un prototype est également un objet, et tous les objets héritent des propriétés et des méthodes de son prototype. Il s'agit d'une fonctionnalité puissante de JavaScript car elle vous permet d'ajouter de nouvelles propriétés ou méthodes aux instances de types d'objets.
Vous pouvez utiliser l'opérateur "in" ou la méthode "HasownProperty" pour vérifier si les propriétés existent dans un objet JavaScript. L'opérateur "in" renvoie True si la propriété existe dans un objet ou sa chaîne prototype. La méthode "HasownProperty" ne renvoie vrai que si la propriété existe dans l'objet lui-même.
La destruction des objets dans JavaScript est une fonction qui vous permet d'extraire les propriétés des objets et de les lier aux variables. Cela peut rendre votre code plus concis et facile à lire. La syntaxe est la suivante: var {propriété1, propriété2} = objet.
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!