プログラマー内(javascript)、変数宣言、学習護衛



🏀 私の答え

function solution(a, b) {
    var answer = 0;
    for(let i in a){
        answer += a[i]*b[i];
    }
    return answer;
}

🏀 追加学習


JavaScript変数宣言の場合:


var

var name = 'baskikball'
    console.log(name) // baskikball
var name = 'javascript'
    console.log(name) // javascript
  • などの変数を再度宣言したが,出力の値はそれぞれ異なる.
  • コード量が大きくなると、変数の使用を把握することが難しくなり、値が変更される可能性があります.
  • 上記の問題を解決するために、ES 6はその後letとconstを追加した.

    let

      let name = 'baskikball'
        console.log(name) // baskikball
      let name = 'javascript'
        console.log(name) 
        // Uncaught SyntaxError: Identifier 'name' has already been declared
  • nameで発表された情報に伴い、エラーが発生しました.
  • 変数は再宣言できません.
  • let vs const

     let name = 'baskikball'
        console.log(name) // baskikball
     let name = 'javascript'
        console.log(name) 
        // Uncaught SyntaxError: Identifier 'name' has already been declared
        name = 'durant'
        console.log(name) //durant
  • letは、変数の再割り当てを許可します.
  • const name = 'baskikball'
        console.log(name) // baskikball
    const name = 'javascript'
        console.log(name) 
        // Uncaught SyntaxError: Identifier 'name' has already been declared
        name = 'durant'
        console.log(name) 
        //Uncaught TypeError: Assignment to constant variable.
  • constでは、変数を再宣言したり、変数を再割り当てしたりすることはできません.
  • ベイク処理中のvarとletの違い

    console.log(foo); // undefined
    	var foo;
    console.log(bar); // Error: Uncaught ReferenceError: bar is not defined
    	let bar;
  • letと宣言された変数は,スコフの開始から変数の宣言まで一時的な死角地帯(TDZ)に陥る.
  • n/a.結論

  • 変数宣言ではconstを使用し、再割り当てが必要な場合はletを使用することが望ましい.
  • オブジェクトを再割り当てすることは一般的ではありません.constを使用すると、予期せぬ再割り当てを防止できます.
  • これからは簡単な問題でも、これらの問題を考えて解決しなければならない.