Maison >interface Web >Questions et réponses frontales >Quelle est la signification du mot clé let dans jquery

Quelle est la signification du mot clé let dans jquery

青灯夜游
青灯夜游original
2022-07-28 16:18:022686parcourir

En jquery, let est un mot-clé pour déclarer des variables. Le mot-clé let vous permet de déclarer une variable, une instruction ou une expression dont la portée est limitée à la portée du bloc. Les variables déclarées par let ne seront pas promues dans la portée, elles sont initialisées au moment de la compilation ; let ne créera pas de propriétés de l'objet window lorsqu'elles sont déclarées globalement (dans la portée de niveau supérieur).

Quelle est la signification du mot clé let dans jquery

L'environnement d'exploitation de ce tutoriel : système windows7, version jquery3.6.0, ordinateur Dell G3.

En jquery, let est un mot-clé qui déclare des variables.

Le mot-clé let déclare une variable locale de portée bloc et peut être initialisée à une valeur (facultatif). Syntaxe :

let name1 [= value1] [, name2 [= value2]] [, ..., nameN [= valueN];

Parameters

  • nameN : Le nom d'une ou plusieurs variables à déclarer, doit être un identifiant légal.

  • valueN : Facultatif, spécifie la valeur initiale de la variable, qui peut être n'importe quelle expression légale.

Exemple :

let x = 1;

if (x === 1) {
  let x = 2;

  console.log(x);
  // expected output: 2
}

console.log(x);
// expected output: 1

Quelle est la signification du mot clé let dans jquery

Description :

let permet de déclarer une variable, une instruction ou une expression dont la portée est restreinte à la portée du bloc. Différent du mot-clé var, la portée de la variable déclarée par var est globale ou l'intégralité du bloc fonction. Une autre différence importante entre var et let est que la variable déclarée par let ne sera pas promue dans le scope, elle est initialisée au moment de la compilation (voir la zone morte temporaire ci-dessous).

Tout comme const, let ne créera pas de propriétés de l'objet window lorsqu'il est déclaré globalement (dans la portée la plus haute).

Vous pouvez apprendre pourquoi nous utilisons let à partir d'ici.

Beaucoup de problèmes peuvent être évités en déclarant les variables let en haut de la portée où elles sont utilisées, mais cela peut affecter la lisibilité.

Différent de var, let n'est que le début d'une instruction, pas une expression complète. Cela signifie que vous ne pouvez pas avoir une déclaration let distincte comme corps d'un bloc de code (ce qui est logique, puisque les variables déclarées ne sont pas accessibles).

if (true) let a = 1; // SyntaxError: Lexical declaration cannot appear in a single-statement context

Règles de portée

La portée d'une variable déclarée par let se trouve uniquement dans le bloc ou le sous-bloc dans lequel elle est déclarée. Ceci est similaire à var. La principale différence entre les deux est que la portée de la variable déclarée avec var est la fonction englobante entière.

function varTest() {
  var x = 1;
  {
    var x = 2; // same variable!
    console.log(x); // 2
  }
  console.log(x); // 2}function letTest() {
  let x = 1;
  {
    let x = 2; // different variable
    console.log(x); // 2
  }
  console.log(x); // 1}
  
  
letTest();
varTest();

Quelle est la signification du mot clé let dans jquery

Dans la portée globale, let est différent de var en ce sens qu'il ne crée pas de propriétés sur l'objet global. Par exemple :

var x = 'global';
let y = 'global';
console.log(this.x); // "global"
console.log(this.y); // undefined

Quelle est la signification du mot clé let dans jquery

Déclaration en double

Une déclaration répétée de la même variable dans la même fonction ou la même portée de bloc générera une SyntaxError.

if (x) {
  let foo;
  let foo; // SyntaxError thrown.
}

Cette erreur sera également déclenchée dans l'instruction switch car il s'agit de la même portée de bloc.

let x = 1;

switch(x) {
  case 0:
    let foo;
    break;
  case 1:
    let foo; // SyntaxError for redeclaration.
    break;
}

Quelle est la signification du mot clé let dans jquery

Cependant, il est important de noter qu'un bloc imbriqué dans une clause case crée un nouvel environnement lexical de portée bloc et ne génère pas d'erreur de déclaration en double.

let x = 1;

switch(x) {
  case 0: {
    let foo;
    break;
  }
  case 1: {
    let foo;
    break;
  }
}

【Apprentissage recommandé : Tutoriel vidéo jQuery, Vidéo web front-end

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:
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