Lorsque JavaScript déclare une variable dans l'objet global, elle deviendra une propriété du même nom que l'objet global, mais lorsqu'elle est déclarée dans une fonction, elle ne le deviendra pas. Pourquoi ?
仅有的幸福
仅有的幸福 2017-06-26 10:58:35
0
7
933

En JavaScript, une fois qu'une variable globale est déclarée globalement, elle deviendra une propriété de l'objet global du même nom. Cependant, une fois qu'une variable locale est déclarée dans une fonction, elle ne deviendra pas un attribut de la fonction (objet). Elle doit plutôt être déclarée en utilisant "nom de la fonction.nom de l'attribut".

仅有的幸福
仅有的幸福

répondre à tous(7)
洪涛

Cela peut être compris ainsi :

Les variables déclarées à l'intérieur d'une fonction appartiennent à l'objet de contexte d'exécution de la fonction, pas à l'objet de fonction
Les variables déclarées dans l'environnement global appartiennent à l'objet de contexte d'exécution global, et cet objet de contexte est l'objet d'environnement global

我想大声告诉你

Il n'y a aucune raison, c'est la règle.

巴扎黑

Problèmes historiques, il est recommandé d'utiliser le mode strict pour éliminer toute confusion.

'use strict';

var v = 2;
console.log(window.v);   // undefined
大家讲道理

Si tu veux dire ça
`function test(){

var a = 1;     // 你说的a是test的属性。
    this.a = 1;// 这才是函数的属性,因为在JS里,“万物”皆对象(可能夸张了。)
              //如果,还不明白,请自觉翻阅,“神奇的this”,"作用域"等基础JS章节

}`
//Mise à jour, correction d'erreur.
L'interlocuteur a un bon aperçu des bases.

我想大声告诉你

Je pense que c'est le problème de portée des variables de fonction js qui est très flexible. J'espère que nous pourrons apprendre ensemble ^~^ ^~^

.
淡淡烟草味

En JavaScript, une fois qu'une variable globale est déclarée globalement, elle deviendra une propriété de l'objet global du même nom. Une fois qu'une variable locale est déclarée dans une fonction, elle devient un objet local, qui est un attribut de la fonction, vous devez donc d'abord accéder à la fonction globalement, puis accéder aux variables locales de la fonction.

typecho

Portée de la fonction

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal