1. letキーワード1.1 基本的な使い方let は 構文構造は次のとおりです。 var1 [= 値1] [, var2 [= 値2]] [, ..., varN [= 値N]] とします。 パラメータの説明: サンプルコードは次のとおりです。 グローバルスコープでは、変数は定義されます // グローバル変数を定義する var a = 100; // var キーワードを使用する let b = 200; // let キーワードを使用する console.log(a); // 100 コンソールログ(b); // 200 グローバル変数を定義するだけでは違いがないことがわかりました。 ブロックスコープでの変数の定義 ブロックスコープの詳細については、この記事を参照してください。 // ブロックスコープで変数を定義する { var a = 100; // var キーワードを使用します let b = 200; // let キーワードを使用します } コンソールログ(a); // 100 console.log(b); // ReferenceError: b is not defined という説明の例外をスローします コード ブロック内で ES6 で提供される サンプルコードは次のとおりです。 // ループ本体を定義します for (let v = 0; v < 10; v++) { console.log("これは for ループです"); // これは for ループです * 10 } console.log(v); // 次の説明を含む例外をスローします: ReferenceError: v が定義されていません
サンプルコードは次のとおりです。 (v = 0; v < 10; v++) の場合 { v = 10とする コンソール.log(v); // 100 * 10 } 上記の結果は、2 つの v が同じスコープ内にないことを意味します。 1.2 変動昇進はないvar を使用して変数を定義すると、次のコードに示すように、いわゆる変数コミッションが発生します。 console.log(v); // 未定義 var v = 100; この値を変数宣言の前に使用し、エラーは報告されませんが、結果は未定義です。これは奇妙なロジックです。一般的なロジックによると、このように使用すると例外がスローされるはずです。 次のコードに示すように: console.log(v); // ReferenceError: 初期化前に 'v' にアクセスできませんという説明の例外がスローされます v = 100 とします。 上記のコードでは、変数は宣言される前に使用できないという説明とともに例外がスローされます。 1.3 一時的なデッドゾーンブロックレベルのスコープ内に v = 100 とします。 { console.log(v); // ReferenceError: 初期化前に 'v' にアクセスできませんという説明の例外がスローされます // この変数はブロックレベルのスコープにバインドされており、このスコープはこの変数のみを使用できます。let v = 200; }
一般的に、ブロック レベルのスコープでは、変数は let キーワードを使用して宣言されるまで使用できません。これは文法的には一時的な 1.4 重複した申告は認められない
// var を使用して変数を宣言します var a = 100; コンソールログ(a); // 100 var a = 1000; // 繰り返し宣言 console.log(a); // 1000 // let を使用して変数を宣言します。let b = 100; コンソールログ(b); // 100 let b = 1000; // 繰り返し宣言 console.log(b); // 次の説明の例外をスローします: SyntaxError: 識別子 'b' は既に宣言されています 繰り返し宣言すると、 1.5 関数との関係関数パラメータはletキーワードを使用して定義された変数と同等です。関数本体でletキーワードを再度使用して、パラメータと同じ名前の変数を再宣言すると、 // let を使用して変数を宣言します。let a = 100; // 関数を定義する function fun(b) { // let b = 10; // 次のような例外がスローされます: SyntaxError: 識別子 'b' は既に宣言されています console.log(a); // 次の説明を含む例外がスローされます: ReferenceError: 初期化前に 'a' にアクセスできません a = 200 とします。 } 楽しい(20) 2. constキーワード2.1 基本的な使い方
いわゆる定数は初期化後は不変であり、宣言時に初期化する必要があります。サンプル コードは次のとおりです。 定数a = 2 a = 3 // 例外をスローします const b // 初期化されていないため例外をスローします ただし、 定数arr = [] ar[0] = 100 console.log(arr) // [100] 定数オブジェクト = {} obj.name = '一碗の周' console.log(obj) // {name: "Yiwan Zhou"} この問題の原因は、const キーワードが実際に保証するのは変数の値を変更できないということではなく、変数が指すメモリ アドレスを変更できないということだからです。String、 しかし、複合データ型、主に 実際の開発では、var キーワードの使用を避け、代わりに JavaScript ESの新機能、letとconstキーワードについての記事はこれで終わりです。ESの新機能についてさらに詳しく知りたい方は、123WORDPRESS.COMの過去の記事を検索するか、以下の関連記事を引き続きご覧ください。今後とも123WORDPRESS.COMをよろしくお願いいたします。 以下もご興味があるかもしれません:
|
<<: クラウド CentOS で Docker リモート サービス リンクを有効にするための実装手順
>>: IE、Firefox、Chromeブラウザではスペースの表示が異なります
コードをコピーコードは次のとおりです。 <スタイル タイプ="text/css&qu...
目次1. 現在のデータベース支出のストレージエンジンを表示する方法1:方法2: 2. ENGINE=...
レスポンシブ レイアウト システムは、今日の一般的な CSS フレームワークではすでに非常に一般的で...
Nginx の主な設定ファイルは nginx.conf で、グローバル ブロック、イベント ブロック...
多くの場合、透明度の設定やぼかしなど、写真の背景を加工する必要があります。 ただし、背景画像が配置さ...
1. フォームテキスト入力のモバイル選択: テキスト入力フィールドにプロンプトが追加されている場...
レンダリング原理フォーム要素には、正規表現(携帯電話番号、メールアドレス、IDカードなど)をカスタマ...
ストアドプロシージャとは簡単に言えば、これは強力で、JAVA 言語のメソッドに似た比較的複雑な論理関...
この記事では、チェックボックスコンポーネントのカプセル化を実装するためのvue3.0の具体的なコード...
HTML にオーディオ ファイルを挿入した後 (mp3 ファイルを再生した後) に発生したいくつかの...
1. 背景Netplan は、Ubuntu システムのネットワーク設定を簡単に管理および構成できるよ...
目次セットは値が重複しない特別なコレクションです。セットコレクション基本API独自の価値判断セットを...
<!--[if IE 6]> IE6 のみが認識可能 <![endif]-->...
1. 背景1. フロントエンドはvue + vuex + socket.io-clientを使用しま...
この記事では、カルーセル画像の表示を実現するためのjsの具体的なコードを参考までに共有します。具体的...