Table des matières
let
Utilisation de base
ES6 ajoute la commande let pour déclarer les variables. Son utilisation est similaire à var, mais la variable déclarée n'est valide que dans le bloc de code où se trouve la commande let.
Les déclarations en double ne sont pas autorisées
const
Maison interface Web js tutoriel Comparaison entre let et const dans JavaScript ES6

Comparaison entre let et const dans JavaScript ES6

Jul 22, 2017 pm 04:54 PM
const

let

Utilisation de base

ES6 ajoute la commande let pour déclarer les variables. Son utilisation est similaire à var, mais la variable déclarée n'est valide que dans le bloc de code où se trouve la commande let.
{
  let a = 10;
  var b = 1;
}

a // ReferenceError: a is not defined.
b // 1

上面代码在代码块之中,分别用let和var声明了两个变量。然后在代码块之外调用这两个变量,结果let声明的变量报错,var声明的变量返回了正确的值。这表明,let声明的变量只在它所在的代码块有效。

for循环的计数器,就很合适使用let命令。

for (let i = 0; i < 10; i++) {
  // ...
}

console.log(i);
// ReferenceError: i is not defined
上面代码中,计数器i只在for循环体内有效,在循环体外引用就会报错。

下面的代码如果使用var,最后输出的是10。

var a = [];
for (var i = 0; i < 10; i++) {
  a[i] = function () {
    console.log(i);
  };
}
a[6](); // 10
上面代码中,变量i是var命令声明的,在全局范围内都有效,所以全局只有一个变量i。每一次循环,变量i的值都会发生改变,而循环内被赋给数组a的函数内部的console.log(i),里面的i指向的就是全局的i。也就是说,所有数组a的成员里面的i,指向的都是同一个i,导致运行时输出的是最后一轮的i的值,也就是10。

如果使用let,声明的变量仅在块级作用域内有效,最后输出的是6。

var a = [];
for (let i = 0; i < 10; i++) {
  a[i] = function () {
    console.log(i);
  };
}
a[6](); // 6
上面代码中,变量i是let声明的,当前的i只在本轮循环有效,所以每一次循环的i其实都是一个新的变量,所以最后输出的是6。你可能会问,如果每一轮循环的变量i都是重新声明的,那它怎么知道上一轮循环的值,从而计算出本轮循环的值?这是因为 JavaScript 引擎内部会记住上一轮循环的值,初始化本轮的变量i时,就在上一轮循环的基础上进行计算。

另外,for循环还有一个特别之处,就是设置循环变量的那部分是一个父作用域,而循环体内部是一个单独的子作用域。

for (let i = 0; i < 3; i++) {
  let i = 'abc';
  console.log(i);
}
// abc
// abc
// abc
上面代码正确运行,输出了3次abc。这表明函数内部的变量i与循环变量i不在同一个作用域,有各自单独的作用域。
Copier après la connexion

Les déclarations en double ne sont pas autorisées

let不允许在相同作用域内,重复声明同一个变量。

// 报错
function () {
  let a = 10;
  var a = 1;
}

// 报错
function () {
  let a = 10;
  let a = 1;
}
因此,不能在函数内部重新声明参数。

function func(arg) {
  let arg; // 报错
}

function func(arg) {
  {
    let arg; // 不报错
  }
}
Copier après la connexion

const

Utilisation de base

const声明一个只读的常量。一旦声明,常量的值就不能改变。

const PI = 3.1415;
PI // 3.1415

PI = 3;
// TypeError: Assignment to constant variable.
上面代码表明改变常量的值会报错。

const声明的变量不得改变值,这意味着,const一旦声明变量,就必须立即初始化,不能留到以后赋值。

const foo;
// SyntaxError: Missing initializer in const declaration
上面代码表示,对于const来说,只声明不赋值,就会报错。

const的作用域与let命令相同:只在声明所在的块级作用域内有效。

if (true) {
  const MAX = 5;
}

MAX // Uncaught ReferenceError: MAX is not defined
const命令声明的常量也是不提升,同样存在暂时性死区,只能在声明的位置后面使用。

if (true) {
  console.log(MAX); // ReferenceError
  const MAX = 5;
}
上面代码在常量MAX声明之前就调用,结果报错。

const声明的常量,也与let一样不可重复声明。

var message = "Hello!";
let age = 25;

// 以下两行都会报错
const message = "Goodbye!";
const age = 30;
Copier après la connexion

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!

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

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
2 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Repo: Comment relancer ses coéquipiers
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: Comment obtenir des graines géantes
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Combien de temps faut-il pour battre Split Fiction?
3 Il y a quelques semaines By DDD

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Compréhension approfondie de const en langage C Compréhension approfondie de const en langage C Feb 18, 2024 pm 12:56 PM

Explication détaillée et exemples de code de const en C En langage C, le mot-clé const est utilisé pour définir des constantes, ce qui signifie que la valeur de la variable ne peut pas être modifiée lors de l'exécution du programme. Le mot-clé const peut être utilisé pour modifier les variables, les paramètres de fonction et les valeurs de retour de fonction. Cet article fournira une analyse détaillée de l'utilisation du mot-clé const en langage C et fournira des exemples de code spécifiques. variable const modifiée Lorsque const est utilisé pour modifier une variable, cela signifie que la variable est une variable en lecture seule et ne peut pas être modifiée une fois qu'une valeur lui a été attribuée. Par exemple : constante

18 façons de résoudre le problème de non-réponse du service audio sous Windows 11 18 façons de résoudre le problème de non-réponse du service audio sous Windows 11 Jun 05, 2023 pm 10:23 PM

La sortie et l’entrée audio nécessitent des pilotes et services spécifiques pour fonctionner comme prévu sous Windows 11. Ceux-ci finissent parfois par rencontrer des erreurs en arrière-plan, provoquant des problèmes audio comme l'absence de sortie audio, des périphériques audio manquants, un son déformé, etc. Comment réparer le service audio qui ne répond pas sous Windows 11 Nous vous recommandons de commencer par les correctifs mentionnés ci-dessous et de parcourir la liste jusqu'à ce que vous parveniez à résoudre votre problème. Le service audio peut ne plus répondre pour un certain nombre de raisons sous Windows 11. Cette liste vous aidera à vérifier et à résoudre la plupart des problèmes qui empêchent les services audio de répondre sous Windows 11. Veuillez suivre les sections pertinentes ci-dessous pour vous aider tout au long du processus. Méthode 1 : Redémarrez le service audio Vous pouvez rencontrer.

Comment utiliser const en langage C Comment utiliser const en langage C Sep 20, 2023 pm 01:34 PM

const est un mot-clé qui peut être utilisé pour déclarer des constantes, des modificateurs const dans les paramètres de fonction, des valeurs de retour de fonction modifiées const et des pointeurs modifiés const. Introduction détaillée : 1. Déclarer des constantes. Le mot-clé const peut être utilisé pour déclarer des constantes. La valeur de la constante ne peut pas être modifiée pendant l'exécution du programme. La constante peut être un type de données de base, tel que des entiers, des nombres à virgule flottante. caractères, etc., ou un type de données personnalisé ; 2. Le modificateur const dans les paramètres de la fonction. Le mot-clé const peut être utilisé dans les paramètres de la fonction, indiquant que le paramètre ne peut pas être modifié à l'intérieur de la fonction, etc.

Quelles sont les utilisations correctes du mot-clé const dans les fonctions C++ ? Quelles sont les utilisations correctes du mot-clé const dans les fonctions C++ ? Apr 11, 2024 pm 02:36 PM

Utilisation correcte du mot-clé const en C++ : utiliser const pour modifier une fonction signifie que la fonction ne modifiera pas les paramètres ou les membres de classe transmis. Utiliser const pour déclarer un pointeur de fonction signifie que le pointeur pointe vers une fonction constante.

Parlons des différences entre var, let et const (exemple de code) Parlons des différences entre var, let et const (exemple de code) Jan 06, 2023 pm 04:25 PM

Cet article vous apporte des connaissances pertinentes sur JavaScript. Il vous présente principalement les différences entre var, let et const, ainsi que la relation entre ECMAScript et JavaScript. Les amis intéressés peuvent y jeter un œil.

Erreur de syntaxe C++ : les références const ne peuvent pas être utilisées avec des définitions non const, comment la résoudre ? Erreur de syntaxe C++ : les références const ne peuvent pas être utilisées avec des définitions non const, comment la résoudre ? Aug 22, 2023 pm 12:54 PM

Erreur de syntaxe C++ : les références const ne peuvent pas être utilisées avec des définitions non const, comment la résoudre ? Lorsque nous utilisons des références const dans la programmation C++, nous rencontrons souvent un problème, c'est-à-dire que les références const ne peuvent pas être utilisées conjointement avec des définitions non const. Il s'agit d'un type d'erreur de syntaxe C++. Alors, comment résoudre ce problème lors de la programmation ? Expliquons-le en détail ci-dessous. 1. La définition de la référence const En C++, une référence const fait référence à un objet immuable ou

Erreur de syntaxe C++ : les fonctions membres modifiées par const doivent déclarer les membres const, comment y faire face ? Erreur de syntaxe C++ : les fonctions membres modifiées par const doivent déclarer les membres const, comment y faire face ? Aug 22, 2023 pm 01:51 PM

Erreur de syntaxe C++ : les fonctions membres modifiées par const doivent déclarer les membres const, comment y faire face ? Dans le langage C++, const est un mot-clé très important, utilisé pour modifier certaines variables, pointeurs, fonctions membres, etc. Pour les fonctions membres, si elle est modifiée avec le mot-clé const, la valeur de la variable membre ne peut pas être modifiée à l'intérieur du corps de la fonction. Cependant, si nous n'ajoutons pas le mot-clé const à la fois dans la déclaration et la définition de la fonction, nous rencontrerons l'erreur de compilation « La fonction membre modifiée par const doit être déclarée.

Que signifie let var const ? Que signifie let var const ? Nov 14, 2023 pm 03:00 PM

llet, var et const représentent respectivement les variables de portée de bloc, les variables de portée de fonction et les constantes. Introduction détaillée : 1. let, utilisé pour déclarer une variable dans une portée de bloc. Une variable déclarée avec let n'est pas accessible avant d'être déclarée. 2. var, utilisée pour déclarer la clé de. une variable.word, la variable déclarée est dans la portée de la fonction ou dans la portée globale et n'est pas limitée par la portée au niveau du bloc ; 3. const, utilisée pour déclarer une constante, une fois attribuée, la variable ne peut pas être réaffectée. Ne peut pas être modifié, etc.

See all articles