へんすう


🔡 へんすう


変数とは、値を格納するために保持されるメモリ領域自体またはメモリ領域を識別するために命名された名前です.
簡単に言えば、変数はプログラミング言語で値を格納および参照するためのメカニズムであり、値の位置の象徴的な名前を指す.

🗣宣言変数


変数を使用するには、宣言する必要があります.
変数を宣言するときは、varletconstのキーワードを使用します.
1var:JavaScript ES 6以前の宣言
var likelion = '9th';
likelion = '9기' // 재할당 가능
var likelion = 9; // 재선언 가능
2」let:JavaScript ES 6以降の再割当可能な宣言
let likelion = '9th';
likelion = 9; // 재할당 가능
let likelion = 'fighting'; // 변수의 재선언 불가 : Uncaught SyntaxError
3const:JavaScript ES 6以降再割り当てできない定数宣言
const likelion = '9th';
likelion = 10; // 재할당 불가
const likelion = 'fighting'; // 변수의 재선언 불가 : Uncaught SyntaxError
  • varの後にletconstが現れたのはvarキーワードは、次の特徴に注意する必要があります.
    19601;変数の繰り返し宣言を許可します.
    var x = 1;
    var y = 1;
    
    // 초기화문이 있는 변수 선언문은 자바스크립트 엔진에 의해 var 키워드가 없는 것처럼 동작한다.
    var x = 100;
    
    // 초기화문이 없는 변수 선언문은 무시된다.
    var y;
    
    console.log(x); // 100
    console.log(y); // 1
    2朕はエリアスキャン関数のコードブロックのみを承認する.
    var i = 10;
    
    // for 문에서 선언한 i 는 전역 변수다. 이미 선연된 전역 변수 i 가 있으므로 중복 선언된다.
    for (var i = 0; i < 5; i++) {
    	console.log(i); // 0 1 2 3 4
    }
    
    // 의도치 않게 i 변수의 값이 변경된다.
    console.log(i); // 5
    関数レベルのスキャンは、グローバル変数を乱用する可能性を高め、予期せぬグローバル変数の繰り返し宣言が発生します.
    3法則は変数の相互選択により,変数宣言はScopeの先頭に引き上げられたようである.
    // 이 시점에 변수 호이스팅에 의해 이미 foo 변수가 선언된다(1. 선언 단계)
    // 변수 foo는 undfined로 초기화된다(2. 초기화 단계)
    console.log(foo); // undefined
    
    // 변수에 값을 할당(3. 할당 단계)
    foo = 123;
    
    console.log(foo); // 123
    
    // 변수 선언은 런타임 이전에 자바스크립트 엔진에 의해 암묵적으로 실행된다.
    var foo;
    変数宣言文の前に変数を参照すると、変数の反発によってエラーが発生することはありませんが、これはプログラムフローと一致しないだけでなく、読み取り可能性を低下させ、エラーの余地を残します.
    そのため,これらの問題を防止するために,新しい変数宣言法let,constが出現した.
  • 📌 var、let、constキーワードの推奨事項は次のとおりです。

  • ES 6を使用する場合、varキーワードは使用されません.
  • を再割り当てする必要がある場合は、letキーを使用します.この場合、変数のスキャンはできるだけ狭くなります.
  • は変更されず、読み取り専用(再割り当てを必要としない定数)の元の値とオブジェクトに対してconstキーワードが使用されます.constキーワードは再割り当てが禁止され、varletキーワードより安全です.