Maison > interface Web > js tutoriel > Quand et pourquoi devez-vous utiliser « ceci ». dans les variables d'objet JavaScript ?

Quand et pourquoi devez-vous utiliser « ceci ». dans les variables d'objet JavaScript ?

Linda Hamilton
Libérer: 2024-12-31 08:38:17
original
257 Les gens l'ont consulté

When and Why Do You Need to Use

Utiliser "ceci". dans les variables d'objet Javascript

En Javascript, contrairement à C , les variables doivent être explicitement préfixées par "this". pour faire référence à l'objet auquel ils appartiennent. Il s'agit d'une différence clé dans la programmation orientée objet entre les deux langages.

Le mot-clé "this" en Javascript représente le contexte actuel, qui est l'objet sur lequel la fonction est appelée. Lorsque vous déclarez une variable sans "this.", elle devient une variable locale dans la portée de cette fonction. Pour accéder à une propriété de l'objet à partir d'une fonction, vous devez utiliser "this". suivi du nom de la propriété.

Considérez le code suivant :

function foo() {
    bar = 0; // This creates a local variable
    this.getBar = function() { return bar; } // This creates a privileged method
}
Copier après la connexion

Dans ce code, "bar" est une variable locale dans la fonction "foo", tandis que "getBar" est une méthode privilégiée qui a accès à la variable locale. Sans utiliser "this.", "getBar" ne pourrait pas accéder à "bar".

Cette approche consistant à utiliser "this". est nécessaire pour toutes les variables auxquelles vous souhaitez accéder à partir des méthodes objet. Cependant, Javascript vous permet de définir des méthodes sur l'objet prototype plutôt que sur des objets d'instance. Les méthodes définies sur le prototype sont héritées par toutes les instances de cet objet. Dans ce cas, vous pouvez éviter d’utiliser « ceci ». pour ces méthodes. Voici un exemple :

function Foo() {
    this.bar = 0;
}
Foo.prototype.getBar = function() { return this.bar; }
Copier après la connexion

Dans ce code, "getBar" est défini sur le prototype, donc les instances de "Foo" héritent de cette méthode et peuvent accéder à "bar" sans préfixer "this.".

En bref, en utilisant « ceci ». est essentiel pour accéder aux propriétés des objets à partir des fonctions/méthodes définies dans les objets d'instance. Cependant, cela peut être évité en définissant des méthodes sur le prototype.

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
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