データ型


文字列

プログラムは、HTML のようなマークアップ言語などとはことなりデータを扱います
コンピュータから見ると、一言でデータといっても様々な種類があります
しかし、JavaScript は比較的種類も少なく簡素にまとめられているので覚えやすいでしょう

まず、代表的なデータ型の一つは文字列型(String 型)です
前回も使用したように、ダイアログに表示したりするための文字を扱います
文字列型は必ずダブルクォーテーション " で囲む必要があります
ただし、ダブルクォーテーションの替わりにシングルクォーテーションも用いることができます
たとえば、文字列のなかにダブルクォーテーションを使用する時に便利です

"Kitty on your lap"
'Kitty on your lap'
'私は "猫耳" が大好きです'
""

これらは、全て文字列データと考えることができます
空の文字列を作る場合も、このように "" として作成します

ダブルクォーテーションやシングルクォーテーションを文字列内で使用する場合
エスケープシーケンス \ を使用することで表現することもできます
\" がダブルクォーテーション、\' がシングルクォーテーション
そして、\\ とするとエスケープ文字 \ が文字列の中で表現されます
alert('Kitty on your lap');
alert('"Kitty on your lap"');
alert("Kitty \"on\" your lap\\");


HTML タグ部分は今後必要な部分以外は省略します(前回と同じ)
必要であれば、サンプルのソースを見て調べてください


数値

プログラムとは、コンピュータを論理的に操作することです
コンピュータは計算がもっとも得意なので、当然プログラムは数値を操作します

JavaScript も当然、様々な意味を持つ数値を操作してプログラムを進行させます
数値は、文字列と違ってクォーテーションで囲んだりはしません
そのまま、半角の(全角はダメ)数値を打ち込めばそれを数値と解釈してくれます

基本的に、JavaScript は10進数です
つまり 0 から 9 間での数字を使った私たちが普段親しんでいる数値です
しかし、コンピュータは人間と違って2のn乗が得意という特徴を持ちます
コンピュータから見ると 100 という数字はものすごく中途半端であり
逆に 256 とか 1024 という数値は安定した数値に見えてくるものなのです
(そのため熟練プログラマさんは、4,8,16,32,64... という数値に敏感です)

このような数値を扱うには、10進数は適していないので
JavaScript も含めた多くの言語は8進数と16進数をサポートしています
8進数とは、0〜7 までの数値を使ったもので 10 が10進数の 8 に相当します
16進数は 0〜9 までの数値と A〜F までの文字を使って表した16個の数値です
16進数 F は10進数の 15 に相当し FF は 255 に相当します

8進数を用いる場合は数値の頭に 0を指定します
ただし数値の中に 8 と 9 が使われていた場合は10進数と解釈されます
16進数は数値の頭に 0xを指定します
alert(255);
alert(0377);
alert(0xFF);


このプログラムを実行すると、すべて 255 という10進数で表示されます
数値を表示する時は、10進数に書式化されて表示されるのです
因みに、16進数で使用するアルファベットは小文字でも構いません

また JavaScript の基本データ型は数値や文字列型の型チェックは厳しくなく
これらのデータ型はメソッドに渡される時はバリアント型として渡されます
この詳細は後記する「変数」についての説明の時に行います

ところで、数値には正数と負数が存在します
これは、数学と同様にハイフン記号 - を数値の前につけることで表現します
alert(-255);
alert(-0xFF);


16進数や8進数では - 記号は 0 より前に付加します
因みに、JScript では正の 0 と負の 0 を区別します

ところで、整数型の数値以外にももう一つ重要な数値型があります
そう、小数 というものが数学の世界には存在します
コンピュータではこれを 浮動小数点数値 というもので表します

おそらく、浮動少数について詳しく取り上げると混乱されるでしょう
通常は、難しく考えずに普通の少数と考えて構いません
JScript の場合は IEEE 754 の 8 バイト浮動小数点を使用します

注意してほしいのですが、8進数や16進数では小数点は表せません
JScript で浮動小数を表す場合は必ず10進数で行う必要があります
alert(42.195);
alert(4e-3);
alert(.0007);


真ん中の 4e-3 という数値は一体どういうものなのでしょうか
これは、指数表記と呼ばれる書き方で e は10の累乗を表します
すなわち、e-3 は 10 の -3 乗であるので結果は 0.004 になります
もし 4e3 であれば 400 という結果になります。e は大文字でも構いません

この他にもいくつか特殊なデータ型が存在しますが
それを知るには他のいくつかの技術を習得する必要があるので後記します



前のページへ戻る次のページへ