letとconst


📢 22/03/13復習
📚 Reference
PoiemaWeb, https://poiemaweb.com/es6-block-scope
javascript.info, https://ko.javascript.info/variables
注意:これは個人がサイトで復習しやすいように再編成された文章です.
詳細については、リファレンスサイトにアクセスしてください.
古いvar
ES 6でletおよびconstを使用する前に、変数を宣言する唯一の方法はvarを使用することである.varと宣言された変数には、次のような特徴があります.
📌 関数のコードブロックのみを受け入れます.したがって、グローバル関数以外で作成されるすべての変数がグローバル変数であり、グローバル変数が乱発される可能性が増加する.
📌 for文の変数宣言は、for文で宣言された変数をコードブロックの外で参照することができる.
📌 varの省略を許可することによって、隠されたグローバル変数が生成される可能性が高い.
📌 変数の繰り返し宣言が許可されているため、予期せぬ変数値の変更が発生する可能性があります.
📌 変数を宣言する前に参照できます.
ほとんどの問題はグローバル変数によって引き起こされます.グローバル変数は使いやすいという利点がありますが、問題が発生する可能性が高いので、使用しないことをお勧めします.letおよびconstは、これらの欠点を補うことを目的とする.
varの欠点を補うletとconst
📌 ブロックレベルスキャンがあります.
かんすうレベルそうさ
関数内で宣言された変数は、関数内でのみ有効であり、関数外で参照できません.すなわち,関数内部で宣言される変数は領域変数であり,関数外部で宣言されるすべての変数はグローバル変数である.
ブロックレベルメータ
すべてのコードブロック(関数、varif、...)で宣言した変数は、コードブロック内でのみ有効であり、コードブロック外で参照できません.すなわち、コードブロックに宣言される変数は、領域変数である.
📌 forとは異なり、同じ名前の変数を宣言すると構文エラーが発生します.
📌 varグローバル変数は、varオブジェクトからアクセス可能であるが、windowおよびletグローバル変数は、非可視の概念ブロックに存在するため、constオブジェクトにアクセスできない.
📌 変数を宣言する前に、この変数を参照することはできません.
letとconstの違い
📌 windowは再割当を許可するが、letは再割当を禁止する.
📌 constは、宣言と同時に割り当てられなければならない.
var vs let vs const
📌 ES 6を使用する場合、constは使用されません.
📌 変更されない元の値とオブジェクトについては、varキーを使用します.constキーワードは再割り当てが禁止されているため、constおよびvarよりも安全です.
📌 再割り当てが必要な場合は、letキーを使用します.
📌 変数を宣言する場合、通常は再割り当てが必要かどうか分かりません.したがって、変数を宣言するときは、まずletキーワードを使用することをお勧めします.再割り当てが必要な場合は、constconstキーワードに変更します.
変数命名規則
JavaScriptでは、変数名には2つの制限があります.
📌 変数名には、アルファベットと数字、および記号letおよび$しか含まれません.
📌 最初のアルファベットは数字ではありません.
有効な変数名の例を次に示します.
let userName;
let test123;
複数の単語を組み合わせて変数名を作成する場合、通常はアルパカ記号が使用されます.camel記号は、最初の単語ではなく、各単語の最初のアルファベットを大文字でリストします.
ドル記号_とアンダースコア$は、変数名に使用できる点が特別です.この特殊記号は普通の文字のように特別な意味を持っていません.
有効な変数名の例を次に示します.
let $ = 1; // "$"라는 이름의 변수를 선언합니다.
let _ = 2; // "_"라는 이름의 변수를 선언합니다.

alert($ + _); // 3
次に、変数名が無効な例を示します.
let 1a; // 변수명은 숫자로 시작해선 안 됩니다.

let my-name; // 하이픈 "-"은 변수명에 올 수 없습니다.
所望の変数名
変数名は簡潔明瞭でなければならない.変数が何なのかよく説明できるはずです.ネーミング変数は、プログラミングにおいて最も重要で複雑な技術の一つです.
実際のプロジェクトでは、完全に独立したコードを最初から作成するよりも、既存のコードフレームワークを変更および拡張する時間が長くなります.間もなく、作成したコードを再確認すると、適切な名前があれば、より簡単に情報を検索できます.
したがって、変数を宣言する前に、変数の名前が適切かどうかを考えてください.
次に、変数の名前を付けるときに参照できるルールを示します.
📌 _userNameのように人が読める名前を使います.
📌 自分が何をしているのか分からない場合は、shoppingCartabという略語は避けてください.
📌 できるだけ叙述的で簡潔な方法で命名してください.cおよびdataは、悪い名前の例である.このような名前は何も説明できません.この名前は、コードコンテキストで変数が指すデータまたは値が非常に明確な場合にのみ使用されます.
📌 自分のルールまたはチームのルールに従ってください.サイト・アクセス者をvalueと呼ぶ場合は、userまたはcurrentVisitorではなく、newManInTownまたはcurrentUserと名前を付けます.
🔥 再使用しますか、新規作成しますか.
開発者の中には、新しい変数を宣言するのではなく、既存の変数を再利用したい人もいます.
繰り返し使用する変数は、過去に貼ったシールを外さずに品物だけを交換する箱のようなものです.箱の中に何がありますか.誰が内容物に関する情報を知っていますか?それを知るためには、箱に近づいて確認しなければなりません.
💥 変数を再使用すると、変数を宣言する作業量を減らすことができますが、デバッグの10倍の時間がかかります.変数を追加するのは悪習ではありません.これはいい習慣です.
モダンJavaScript圧縮プログラム(minifier)とブラウザは、コードの最適化を支援します.変数を追加してもパフォーマンスに問題はありません.値が異なる場合は、異なる変数を宣言すると、コードの最適化に役立つ場合があります.