Maison > interface Web > js tutoriel > Partage d'informations utiles JS - cela souligne le problème

Partage d'informations utiles JS - cela souligne le problème

hzc
Libérer: 2020-06-18 09:23:20
avant
2236 Les gens l'ont consulté

Utiliser habituellement c'est un peu déroutant, alors j'ai écrit un résumé.

Avant, il n'y avait pas de fonction flèche, nous disions c'est l'objet environnement où la fonction s'exécute, mais dans la fonction flèche, c'est l'objet où elle est définie. Parlons de quoi. tout le monde sait d'abord : la fonction en cours d'exécution L'objet d'environnement où il se trouve à ce moment-là.

1. En tant qu'appel de fonction, cela pointe vers l'objet global

2 En tant qu'appel de méthode objet, l'objet est le contexte appelant, et cela pointe vers l'objet.

3. En tant qu'appel de constructeur, le constructeur tente d'initialiser l'objet nouvellement créé et utilise cet objet comme contexte d'appel, celui-ci pointant vers l'objet nouvellement créé.

4. Appel indirect via la méthode call/apply de la fonction Le premier paramètre de la méthode call/apply est le contexte d'appel dans le corps de la fonction. il est obtenu grâce à cette citation.

Dans la fonction flèche, le cet objet est la portée dans laquelle il est défini, c'est-à-dire que la fonction flèche elle-même n'a pas. this, et le this interne est le code externe this dans la portée du bloc.

5, fonction indépendante

La fonction flèche est définie dans l'environnement global, c'est-à-dire cela pointe vers la fenêtre

6, les méthodes objet

Comme indiqué ci-dessus, foo est défini globalement, donc cela pointe vers la fenêtre, alors comment faire ce point sur obj ?

Selon l'article précédent, lorsqu'une fonction est appelée comme méthode d'un objet, cela pointe vers l'objet et peut être réécrit comme ceci :

func est défini lorsque foo est appelé. La portée de foo à ce moment est obj, donc cela pointe vers obj

7 et le constructeur . Comme la fonction flèche n'a pas cela, elle ne peut pas être utilisée comme fonction constructeur, sinon une erreur sera signalée

8

, . bind/call

comme ci-dessus : func est défini globalement, il affiche donc 0. Identique à la méthode objet, nous pouvons la réécrire comme suit pour imprimer 1

Tutoriel recommandé : "

Tutoriel JS



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:
js
source:cnblogs.com
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