ホームページ > ウェブフロントエンド > フロントエンドQ&A > JQueryのキーワードletの意味は何ですか

JQueryのキーワードletの意味は何ですか

青灯夜游
リリース: 2022-07-28 16:18:02
オリジナル
2685 人が閲覧しました

jquery では、let は変数を宣言するためのキーワードです。let キーワードを使用すると、スコープがブロック スコープに制限された変数、ステートメント、または式を宣言できます。 let で宣言された変数はスコープ内でプロモートされず、コンパイル時に初期化されます。let はグローバルに (トップレベルのスコープ内で) 宣言された場合、ウィンドウ オブジェクトのプロパティを作成しません。

JQueryのキーワードletの意味は何ですか

このチュートリアルの動作環境: Windows7 システム、jquery3.6.0 バージョン、Dell G3 コンピューター。

jquery では、 let は変数を宣言するキーワードです。

let キーワードはブロック スコープのローカル変数を宣言し、値に初期化できます (オプション)。構文:

let name1 [= value1] [, name2 [= value2]] [, ..., nameN [= valueN];
ログイン後にコピー

Parameters

  • nameN: 宣言される 1 つ以上の変数の名前は、正当な識別子である必要があります。

  • valueN: オプションで、変数の初期値を指定します。これには、任意の正規表現を使用できます。

例:

let x = 1;

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

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

console.log(x);
// expected output: 1
ログイン後にコピー

JQueryのキーワードletの意味は何ですか

説明:

let を使用すると、スコープが制限付き ブロックスコープ内の変数、ステートメント、または式。 var キーワードとは異なり、var で宣言された変数のスコープはグローバルまたは関数ブロック全体です。 var と let のもう 1 つの重要な違いは、let で宣言された変数はスコープ内でプロモートされず、コンパイル時に初期化されることです (以下の一時的なデッド ゾーンを参照)。

const と同様に、let はグローバルに (トップレベルのスコープ内で) 宣言された場合、ウィンドウ オブジェクトのプロパティを作成しません。

ここから let を使用する理由を学ぶことができます。

let 変数を使用するスコープの先頭で宣言すると、多くの問題を回避できますが、読みやすさに影響する可能性があります。

var とは異なり、let は完全な式ではなくステートメントの始まりにすぎません。これは、コード ブロックの本体として個別の let 宣言を使用できないことを意味します (宣言された変数にはアクセスできないため、これは当然のことです)。

if (true) let a = 1; // SyntaxError: Lexical declaration cannot appear in a single-statement context
ログイン後にコピー

スコープ ルール

let で宣言された変数スコープは、それが宣言されているブロックまたはサブブロック内にのみ存在します。これは var と似ています。 2 つの主な違いは、var で宣言された変数のスコープが、それを囲んでいる関数全体であることです。

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();
ログイン後にコピー

JQueryのキーワードletの意味は何ですか

グローバル スコープでは、let はグローバル オブジェクトにプロパティを作成しないという点で var とは異なります。例:

var x = 'global';
let y = 'global';
console.log(this.x); // "global"
console.log(this.y); // undefined
ログイン後にコピー

JQueryのキーワードletの意味は何ですか

重複した宣言

同じ関数またはブロック スコープ内で同じ変数の宣言を繰り返すと、SyntaxError がスローされます。 。

if (x) {
  let foo;
  let foo; // SyntaxError thrown.
}
ログイン後にコピー

このエラーは、同じブロック スコープであるため、switch ステートメントでもトリガーされます。

let x = 1;

switch(x) {
  case 0:
    let foo;
    break;
  case 1:
    let foo; // SyntaxError for redeclaration.
    break;
}
ログイン後にコピー

JQueryのキーワードletの意味は何ですか

ただし、case 句にネストされたブロックは、新しいブロック スコープの字句環境を作成し、エラーの Appeal 繰り返しステートメントは生成されないことに注意することが重要です。

let x = 1;

switch(x) {
  case 0: {
    let foo;
    break;
  }
  case 1: {
    let foo;
    break;
  }
}
ログイン後にコピー

【推奨学習: jQuery ビデオ チュートリアル Web フロントエンド ビデオ ]

以上がJQueryのキーワードletの意味は何ですかの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート