Maison > interface Web > js tutoriel > A quoi ça sert en javascript

A quoi ça sert en javascript

青灯夜游
Libérer: 2023-01-05 16:11:33
original
7399 Les gens l'ont consulté

Utilisation de ceci : 1. Dans les appels de fonction purs, this est utilisé pour représenter l'objet global ; 2. Lorsque la fonction est appelée en tant que méthode objet, this est utilisée pour représenter l'objet supérieur ; appelé en tant que constructeur, this Utilisé pour représenter de nouveaux objets ; 4. Lorsque apply est appelé, this est utilisé pour représenter le premier paramètre de la fonction apply().

A quoi ça sert en javascript

L'environnement d'exploitation de ce tutoriel : système Windows 7, JavaScript version 1.8.5, ordinateur Dell G3.

Il s'agit d'un mot clé dans le langage JavaScript.

Il s'agit d'un objet généré automatiquement à l'intérieur du corps de la fonction lorsque la fonction est en cours d'exécution, et ne peut être utilisé qu'à l'intérieur du corps de la fonction.

function test() {
 this.x = 1;
}
Copier après la connexion

Dans le code ci-dessus, lorsque le test de fonction est en cours d'exécution, un objet this sera automatiquement disponible en interne.

Alors, quelle est la valeur de cela ?

Cela a des valeurs différentes selon les différents scénarios d'utilisation de la fonction. En général, il s'agit de l'objet environnement dans lequel la fonction s'exécute. Ce qui suit est une discussion détaillée de son utilisation dans quatre situations.

Scénario 1 : Appel de fonction pur

Il s'agit de l'utilisation la plus courante des fonctions et il s'agit d'un appel global, cela représente donc l'objet global. Veuillez regarder le code suivant, son résultat d'exécution est 1.

var x = 1;
function test() {
   console.log(this.x);
}
test();  // 1
Copier après la connexion

Cas 2 : Appel en tant que méthode objet

La fonction peut également être appelée en tant que méthode d'un objet, auquel cas cela fait référence à l'objet supérieur.

function test() {
  console.log(this.x);
}
var obj = {};
obj.x = 1;
obj.m = test;
obj.m(); // 1
Copier après la connexion

Cas 3 : Appelez

en tant que constructeur Le soi-disant constructeur est grâce à cette fonction, un nouvel objet peut être généré. Pour le moment, cela fait référence à ce nouvel objet.

function test() {
 this.x = 1;
}
var obj = new test();
obj.x // 1
Copier après la connexion

Le résultat courant est 1. Afin de montrer qu'il ne s'agit pas d'un objet global pour le moment, nous apportons quelques modifications au code :

var x = 2;
function test() {
  this.x = 1;
}
var obj = new test();
x  // 2
Copier après la connexion

Le résultat courant est 2, indiquant que la valeur de la variable globale x n'a pas changé du tout.

Quatrième cas apply call

apply() est une méthode de la fonction, et sa fonction est de changer l'objet appelant de la fonction. Son premier paramètre représente l'objet modifié qui appelle cette fonction. Par conséquent, cela fait référence au premier paramètre à ce moment-là.

var x = 0;
function test() {
 console.log(this.x);
}
var obj = {};
obj.x = 1;
obj.m = test;
obj.m.apply() // 0
Copier après la connexion

Lorsque le paramètre de apply() est vide, l'objet global est appelé par défaut. Par conséquent, le résultat actuel est 0, ce qui prouve qu'il s'agit de l'objet global.

Si vous modifiez la dernière ligne de code en

obj.m.apply(obj); //1
Copier après la connexion

, le résultat en cours d'exécution devient 1, ce qui prouve que cela représente l'objet obj.

[Apprentissage recommandé : Tutoriel JavaScript avancé]

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!

É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