JavaScript 変数
変数はデータを格納するコンテナです。
JavaScript変数を宣言する4つの方法。- 自動的に設定
var
の使用let
の使用const
の使用
この最初の例では、x
、y
、とz
は宣言されていない変数である。
これらは最初に使われるときに自動的に宣言されます。
- xは値5
- yは値6を格納
- zは値11を格納
メモ
var
は1995年から2015年まで、すべてのJavaScriptのコードで使われていた。
2015年にJavaScriptに
let
とconst
が追加されました。
var
は、古いブラウザ向けに書かれたコードでのみ使用してください。
2つの変数price1
とprice2
はconst
で宣言されている。
これらは定数値であり、変更することはできません。
変数 total
は let
で宣言されています。
値 total
は変更可能です。
var、let、constをいつ使うか?
- 常に変数を宣言する。
- 値を変更しない場合は、常に
const
を使用する。 - 型を変更しない場合は、常に
const
を使用する(配列とオブジェクト)。 const
が使えない場合のみlet
を使う。- 古いブラウザに対応しなければならない場合のみ
var
を使う。
代数のように
代数と同じように、変数は値を保持します。
代数と同じように、変数は式で使用されます。
上記の例から、合計は11と計算されると推測できます。
注意
変数は、値を格納するためのコンテナです。
JavaScript識別子
すべてのJavaScript変数はユニークな名前で識別される必要があります。
これらの一意の名前は識別子と呼ばれます。
識別子は、短い名前(xやyなど)またはよりわかりやすい名前(age、sum、totalVolume)にすることができます。
変数(一意の識別子)の名前を作成するための一般的な規則は次のとおりです。
- 名前には、文字、数字、アンダースコア、およびドル記号を含めることができます。
- 名前は文字で始める必要があります。
- 名前は$と_で始めることもできます(ただし、このチュートリアルでは使用しません)。
- 名前は大文字と小文字が区別されます (yとYは異なる変数です)。
- 予約語(JavaScriptキーワードなど)は名前として使用できません。
注意
JavaScript識別子は大文字と小文字が区別されます。
代入演算子
JavaScriptでは、等号(=
)は、「等しい」演算子ではなく、「代入」演算子です。
これは代数とは異なります。以下は、代数では意味がありません。
ただし、JavaScriptでは、これは完全に理にかなっています。つまり、x + 5の値をxに代入することを意味します。
(x + 5の値を計算し、結果をxに入れます。x の値は5増加します。)
注意
「等しい」演算子は、JavaScriptでは==
のように記述されます。
JavaScriptデータ型
JavaScript変数は、100のような数値と「テックアイエス」のようなテキスト値を保持できます。
プログラミングでは、テキスト値はテキスト文字列と呼ばれます。
JavaScriptは多くの種類のデータを処理できますが、ここでは数値と文字列について考えてみましょう。
文字列は、二重引用符または単一引用符で囲みます。数字は引用符なしで書かれています。
数字を引用符で囲むと、文字列として扱われます。
JavaScript変数の宣言
JavaScriptで変数を作成することを変数の「宣言」と呼びます。
JavaScript変数は、var
またはlet
キーワードを使用して宣言します。
宣言後、変数には値がありません(技術的にはundefined
です)。
変数に値を割り当てるには、等号を使用します。
変数を宣言するときに、変数に値を代入することもできます。
以下の例では、carName
という変数を作成し、値「Volvo」をそれに割り当てます。
次に、id="demo"を使用してHTML段落内の値を「出力」します。
例
注意
すべての変数をスクリプトの先頭で宣言することは、プログラミングの良い習慣です。
1つのステートメント、多くの変数
1つのステートメントで多くの変数を宣言できます。
ステートメントをlet
で開始し、変数をカンマで区切ります。
宣言は複数の行にまたがることができます。
値 = undefined
コンピュータープログラムでは、値を指定せずに変数が宣言されることがよくあります。値は、計算する必要があるもの、またはユーザー入力のように後で提供されるものにすることができます。
値を指定せずに宣言された変数の値はundefined
になります。
このステートメントの実行後、変数carNameの値はundefined
になります。
JavaScript変数の再宣言
var
で宣言された JavaScript変数を再宣言しても、その値は失われません。
これらのステートメントの実行後も、変数 carName
の値は「Volvo」のままです。
注意
let
またはconst
で宣言された変数を再宣言することはできません。
こちらのコードは機能しません。
JavaScript算術
代数と同様に、=
や+
などの演算子を使用して、JavaScript変数で算術演算を行うことができます。
文字列を追加することもできますが、文字列は連結されます。
こちらも試してください。
注意
数値を引用符で囲むと、残りの数値は文字列として扱われ、連結されます。
こちらを試してください。
JavaScriptドル記号 $
JavaScriptはドル記号を文字として扱うため、$を含む識別子は有効な変数名です。
JavaScriptでドル記号を使用することはあまり一般的ではありませんが、プロのプログラマーはJavaScriptライブラリのメイン関数のエイリアスとしてドル記号をよく使用します。
たとえば、JavaScriptライブラリjQueryでは、HTML要素を選択するためにメイン関数$
が使用されます。jQueryで$("p");
は「すべてのp要素を選択する」という意味です。
JavaScriptアンダースコア (_)
JavaScriptはアンダースコアを文字として扱うため、_を含む識別子は有効な変数名です。
JavaScriptではアンダースコアを使用することはあまり一般的ではありませんが、プロのプログラマーの間では、「プライベート(隠し)」変数のエイリアスとしてアンダースコアを使用するのが慣習となっています。
プログラミング学習を加速させる
プログラミングをプロの講師に教えてもらいませんか。