1.変数とは何
変数は”箱”です。値を入れて保存し、また、保存した箱の中の値を見ることができます。
2.型とは
変数には、”型”があります。文字を入れる文字列型、数値を入れる数値型、オブジェクトを入れるオブジェクト型があります。
たとえば、
a=1;
変数aは、数値型になります。なぜ?
数値を入れているからです。
文字列を入れると、文字列型になります。
a=''1”;
文字列の時には、ダブルコーテーション ” で挟むのが約束です。
場合により、シングルコーテーション ' で挟むこともあります。
[書式]
基本形です。
var 変数名;
初期値をセットして、変数を定義する場合には、
var 変数名=初期値;
複数の変数を一行で、定義する場合には、
var 変数名,変数名;
もちろん、複数の変数を一行で定義し、初期値もセットすることも可能です。
var 変数名=初期値,変数名=初期値;
3.変数と計算
では、問題です。
a=1;
b=a+a;
この時のbの値は?
aの値とaの値を足した結果をbへ保存するので、bは2です。
もう一問。
a=’’1”;
b=a+a;
この時のbの値は?
文字列型aの変数を、2つ連結しbへ保存するので、bは”11’’です。
それでは、次の場合、cの値は?
a=1;
b=”1”;
c=a+b;
ダメです。3行目でエラーです。
数値と文字列の足し算はできません。
a=”あ’’;
b=3;
c=a*b;
*は掛け算を表しますが、人間なら気をきかせて、”あああ”と3回の”あ”を続けるかもしれませんが、JavaScriptのエンジンは融通はききません。エラーと言われるだけです。
型が違うと、一緒に計算は出来ないと覚えましょう。
4.変数のスコープ
もう一つ、変数の基本で理解する必要があるのが、変数のスコープです。
変数のスコープとは、その変数を読み書きできる範囲です。
例えば、関数の中で定義した変数は、関数の外から読み書きはできません。
関数の外で定義した、どこからでも読み書きできる変数をグローバル変数、関数の中で定義した、関数の中でだけ読み書きできる変数をローカル変数と呼びます。
関数の中で定義した変数は、その関数の中で定義した関数、いわば子供の関数からは読み書きできます。しかし、子供の関数の中で定義した変数を親の関数から読み書きはできません。
これが、変数のスコープです。
5.その他の注意
その他の変数関連の注意事項は、idで使った文字列と同じ変数名は使えないや、予約語と同じ変数名は使えないなどです。
オブジェクト型の説明がないまま、終わりに近づいてしまいました。
オブジェクト型は、オブジェクトを、まるっと変数へ入れたいときに使います。
前回、message変数へ、msgというidを持つ要素を入れた時に使いました。
変数の基本は、このくらいで大丈夫です。型が違う計算は、意外とありがちです。お互い気をつけたいものです。
0 件のコメント:
コメントを投稿