JavaScript の基礎 06 - let キーワードと var キーワードの違いは何ですか?

こんにちは、友達、私は雷功です!
毎日少しずつ学習して、今日も JavaScript の基礎を学習してください。学習ノートは次のとおりです。

1. 変数の性質

メモリ:コンピュータ内でデータが保存される場所で、空間に相当します。
変数の本質: 変数は、プログラムがデータを保存するためにメモリ内に適用するスペースです。

ここに画像の説明を挿入します

2. let と var の類似点と相違点

2.1. 類似性
2.1.1. Let と var は両方ともキーワードです。
2.1.2. Let と var は両方とも変数を定義するために使用されます。

2.2. 相違点
2.2.1. let が変数を定義する場合、最初に変数を定義してから使用する必要があります。
2.2.2. var で定義された変数は、最初に試してから定義できます。
2.2.3. let で定義した変数名を(同じスコープ内で)繰り返すことはできません。
2.2.4. var で定義された変数名は繰り返すことができます。

3. グローバルな範囲

グローバル (関数の外) で宣言された変数にはグローバル スコープがあります。

例:

var myName=“雷工笔记”;
//此处的代码能够使用  myName

function myFunction(){
    
    
    //此处的代码能够使用 myName
}

グローバル変数は、JavaScript プログラム内のどこでも使用できます。

4. 機能範囲

ローカルに (関数の外部に対して、つまり関数内で) 宣言された変数には関数スコープがあります。

例:

//此处的代码不能够使用 myName

function myFunction(){
    
    
    var myName=“雷工笔记”;
    //此处的代码能够使用 myName
}

//此处的代码不能够使用 myName

ローカル変数は、それが宣言されている関数内でのみ使用できます。

5. JavaScript ブロックのスコープ

var キーワードを使用して宣言された変数にはブロック スコープがありません。
ブロック {} 内で宣言された変数には、ブロックの外側からアクセスすることもできます。

例:

{
    
    
    var myName="雷工笔记"let yourName="盗墓笔记";
}
//此处可以访问myName,不可以访问yourName;

6. 変数を再宣言する

var を使用して変数を再宣言すると、問題が発生する可能性があります。
ブロック内で変数を再宣言すると、ブロック外の変数も再宣言されます。

例:

   var myName="雷工笔记"//此处myName为雷工笔记
{
    
    
    var myName="盗墓笔记";
    //此处myName为盗墓笔记
}
//此处myName为盗墓笔记

let を使用して変数を再宣言すると、この問題を回避できます。
ブロック内で再宣言しても、ブロックの外の変数は再宣言されません。

例:

    let myName="雷工笔记"//此处myName为雷工笔记
{
    
    
    let myName="盗墓笔记";
    //此处myName为盗墓笔记
}
//此处myName为雷工笔记

この理由は、実際には var にはブロックの概念がないためで、ループ内で使用すると同様の問題が発生します。

7. 追記

上記の記録から、let は var に関するいくつかの問題を解決するように見えるため、let の使用を選択する必要があることがわかります。
通常使用するソフトウェアと同じように、最新バージョンを使用することを選択する必要がありますが、結局のところ、ほとんどのアップグレードはアプリケーションをより便利にし、以前のバージョンで見つかったバグを補うために行われます。

おすすめ

転載: blog.csdn.net/u013097500/article/details/132701701