JavaScript 変数宣言 varキーワード

20220328

JavaScript

t f B! P L

プログラミング

変数宣言 varキーワード

再宣言と再代入可能

var a = 1;
a = 2; //再代入可能

var a =3; //再宣言可能

なんでもOK!後で書き換えられる。
なんでもOKだからこそ、後で書き換えてしまってわけがわからなくなる。バグを生みやすい。
そのため、使いたくない。

変数の参照の巻き上げ可能

a = 100;
console.log(a);

var a;

結果:
100
と出力される。

変数sの宣言前の値を参照できる。
これもバグを生みやすい。
そのため、使いたくない。

変数のスコープ単位が関数単位

var a = 0;

if(true){
    var a = 1;
    var b = 2;
    console.log(a);
}

console.log(a);
console.log(b);

結果:
1
1
2
と出力される。

その理由は、
varのスコープは、関数単位(〇〇.js単位)だからである。

これもスコープの範囲が大きいため、バグを生みやすい。
そのため、使いたくない。

まとめ

varキーワードのメリット

・ほぼなんでもあり

varキーワードのデメリット

・再宣言と再代入可能
・変数の参照の巻き上げ可能
・変数のスコープ単位が関数単位
が主にバグを生みやすい。
ほぼなんでもありのため、後から書き換え可能で、複数人でコードを書いているとなおバグを生みやすい。

一切varを使わないでコードを書く。

 

このブログについて

技術的に悩んだこと、やってみたことを書き溜めています。自身の復習のため、また同じ悩みがある方は参考にできるような書き方にしていきます。 趣味の競馬AI開発と競馬AIでの予想も公開していきます。 金曜日に土曜日の中央競馬(JRA)全レース予想、土曜日に日曜日の中央競馬(JRA)全レース予想を公開する予定です。

Tags

Golang (1) JavaScript (9) python (2) 機械学習 (6) 競馬 (343) 副業 (2)

注目の投稿

2023/06/04(日) 競馬AI予想(東京競馬場)

このブログを検索

アーカイブ

投稿者情報

TANDE競馬のあいちゃんのアイコンです

はじめまして。あいちゃんです。雑魚エンジニアです。趣味で機械学習をやっています。日々の勉強としてアウトプットしていきます。

QooQ