TIL 03. JavaScript:変数宣言とその違い


JavaScriptでのvar、let、constの違いの表示

1. var


varを使用すると、変数宣言の場合、割り当てられた値が動的に変更される可能性があります.
同じ変数名の場合は、各変数の後続値が時間とともに変化する可能性があります.
var name="a";
console.log(name); // a를 출력

var name="b";
console.log(name); // b를 출력

2. let


再割り当ては可能ですが、再宣言はできません.
同じ名前の変数を2回宣言すると、エラーメッセージが表示されます.
let name = "a"
console.log(name); //a 출력

let name = "b"
console.log(name); // SyntaxError: Identifier 'name' has already been declared
ただし、再配分は可能です.
let name = "a";
console.log(name); //a 출력
name = "b";
console.log(name); //b 출력

let name = "a";
console.log(name);  // a 출력
let name = "b";
console.log(name); // syntaxError

3. const


再割当、再宣言できません

4.有効範囲

  • var変数の有効範囲はグローバル範囲でグローバル有効であり、関数内ではその関数のみ有効(非{}の関数単位範囲でのみ有効)
  • var x = 2;
    
    function x(){
    	var x = 5;
        console.log(x);
     }
     x();  //5 출력
     console.log(x); // 2 출력
  • var変数の宣言は、コードの実行前に処理され、どこで宣言しても、その効果は上部宣言と同じであることを示します.この動作を「Holist」と呼びます.コメントリンク
  • let,constはブロック範囲(block-scoped)であり、変数({}内)
  • を宣言することができる.
    let x = 5;
    if(x===5) {
    	let x=2;
        console.log(x); // 2
     }
     
     console.log(x); // 5
    ifドア内のxはifドアの外で無効です

    リファレンス