クロネコ先生
javascriptの変数定義について解説していくよ。
変数定義の例
var x = 10;
let y = 'Hello';
const PI = 3.14;
定義方法は、「var」「let」「const」の三つになります。
それぞれの特徴を挙げていきます。
var
・同じ変数名で何度宣言しても大丈夫。
let
・同じブロック内で同じ変数名の宣言が不可能。
const
・同じブロック内で同じ変数名の宣言が不可能。
・一度代入したら、再度変数を代入することは不可能。
・変数宣言時に必ず値を代入しなければならない。
どれを使えばよいか
基本的には「let」を使っていくことになります。
letを使う理由
同じ変数をどこでも何度でも宣言できる「var」だと、コードが冗長になってしまい、行数が多くなりますし、それぞれの変数の役割の見分けがつきにくくなります。
また「const」は値の上書きが出来ないので、変数としては汎用性が低いです。環境変数など値が変えたくない場合に使用しましょう。
サンプルコード
function exampleFunction() {
let x = 10;
console.log(x);
}
// 上記関数呼び出し
exampleFunction()
// 上記関数内の変数と同じ変数名かつ、異なる値でエラーが起きないか検証
let x = 20;
console.log(x);
「同じブロック内」というのは、サンプルコードでは「exampleFunction()関数」の中括弧を指しています。
サンプルコードでは関数内で「let x = 10;」、関数外で「let x = 20;」を宣言するというように、同じ変数名で宣言をしました。
これで、異なる値がそれぞれ出力されれば、異なるブロック内なら同じ変数名でも宣言することが可能ということが分かります。
出力
10
20
想定通り、異なる値が出力されました。
まとめ
基本的に変数定義では「let」を使用し、環境変数の定義などで「const」を使っていくのが望ましいでしょう。
コメント