Maison > interface Web > js tutoriel > Quelle est la différence entre let et const

Quelle est la différence entre let et const

青灯夜游
Libérer: 2023-01-04 09:37:59
original
18728 Les gens l'ont consulté

Différence : les variables déclarées par let peuvent être modifiées, et la valeur et le type peuvent être modifiés ; tandis que les constantes déclarées par const ne peuvent pas être modifiées, ce qui signifie qu'une fois const déclaré, il doit être initialisé immédiatement et ne peut pas être modifié. attribué une valeur plus tard.

Quelle est la différence entre let et const

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

Recommandations associées : "Tutoriel vidéo javascript"

La différence entre let et const :

① Les variables déclarées par let peuvent être modifiées, et la valeur et le type peuvent être modifiés ; les constantes déclarées par const ne peuvent pas être modifiées, ce qui signifie qu'une fois const déclaré, il doit être initialisé immédiatement et ne peut pas être attribué. une valeur plus tard.

const i ; // 报错,一旦声明,就必须立即初始化
const j = 5;
j = 10; // 报错,常量不可以改变
Copier après la connexion

②Pour les variables de type composite telles que les tableaux et les objets, le nom de la variable ne pointe pas vers les données, mais vers l'adresse où se trouvent les données. const garantit uniquement que l'adresse pointée par le nom de la variable reste inchangée, mais ne garantit pas que les données à cette adresse restent inchangées. Vous devez donc être très prudent lorsque vous déclarez une variable de type composite comme constante.

const arr = [];
// 报错,[1,2,3]与[]不是同一个地址
arr = [1,2,3];
const arr = [];
// 不报错,变量名arr指向的地址不变,只是数据改变
arr[0] = 1;
arr[1] = 2;
arr[2] = 3;
console.log(arr.length); // 输出:3
Copier après la connexion

Si vous souhaitez que les données de l'objet ou du tableau défini ne changent pas, vous pouvez utiliser object.freeze(arr) pour le geler. Le gel signifie que de nouveaux attributs ne peuvent pas être ajoutés à cet objet ou tableau, que les valeurs des attributs existants ne peuvent pas être modifiées et que les attributs existants ne peuvent pas être supprimés.

const arr = [];
Object.freeze(arr);
// 不报错,但数据改变无效
arr[0] = 1;
arr[1] = 2;
arr[2] = 3;
console.log(arr.length); // 输出:0
Copier après la connexion

Les similitudes entre let et const :

① Uniquement valable dans la portée au niveau du bloc où il est déclaré.

② Il n'y a pas de promotion, et il y a une zone morte temporaire. Elle ne peut être utilisée qu'après le poste déclaré.

③ Ne peut pas être répété.

Pour plus de connaissances sur la programmation, veuillez visiter : Introduction à la programmation ! !

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