【Java Script入門の道のデータ型と値】

4414 ワード

【Java Script入門の道のデータ型と値】
コンピュータプログラムは、値(value)を操作することによって実行されます.1つのプログラム設計言語では、表示および操作可能な値のタイプをデータ型(datatype)と呼び、プログラム設計言語の最も基本的な特徴の1つは、サポートされるデータ型の集合である.JavaScriptでは、数値、テキスト文字列、ブール値の3つの基本データ型を使用できます.さらに、2つの小さなデータ型null(空)とundefined(未定義)もサポートされ、それぞれ1つの値しか定義されていません.
    これらの基本的なデータ型に加えて、JavaScriptはデータ型であるオブジェクト(object)をサポートします.もう一つの特殊なオブジェクト--関数(function).関数と配列に加えて、JavaScript言語のコアには、他の専用オブジェクトも定義されています.これらのオブジェクトは新しいデータ型ではなく、オブジェクトの新しいクラスを表しています(ps:これでは少し回りくどいかもしれませんが、後でゆっくり説明します!).Dateクラス定義の日付を表すオブジェクト、RegExpクラス定義の場合は正規表現を表すオブジェクト(強力なモードマッチングツール)Errorクラス定義時はJavaScriptプログラムで発生した構文エラーとランタイムエラーのオブジェクトを表します.
   数値(number)は最も基本的なデータ型であり、ほとんど説明する必要はありません.JavaScriptと他のプログラム設計言語の違いは、整数値と浮動小数点値を区別しない点です.JavaScriptプログラムに数値が直接現れる場合、数値直接量と呼びます.数値直接量の前にマイナス記号(-)を付けます.付属を構成することができます.ただし、マイナス記号は、数値直接量構文の一部ではない一元逆演算子です.JavaScriptは、数値を文字列にフォーマットしたり、文字列を数値に解析したりすることができます.浮動小数点値が表す最大値より大きい場合、その結果は特殊な無限大値であり、Infinityとして出力されます.同じ負の値が表す最小の負の値よりも小さい場合、結果は負が無限大になり、出力結果は-Infinityになります.
   JavaScriptは、特定の数値ごとに定数を定義します.これらの定数には、次のものがあります.
定数
意味
Infinity
無限大を表す特殊値
NaN
特殊な数値以外の値
Number.MAX_VALUE
表示可能な最大値
Number.MIN_VALUE
表示可能な最小値
Number.NaN
特殊な数値以外の値
Number.POSITIVE_INFINITY
正無限大を表す特殊値
Number.NEGATIVE_INFINITY
負の無限大を表す特殊値
   ストリング(string)は、Unicode文字、数字、句読点などからなるシリーズで、JavaScriptをテキストのデータ型を表すために使用します.ストリングとは、単一引用符または二重引用符で囲まれたUnicode文字のシーケンスで、0文字以上のUnicode文字を含むことができます.JavaScriptの内部特性の1つは、文字列を接続できることです.プラス(+)演算子は数値に使用され、2つの数値が加算されます.ただし、文字列に作用すると、2つの文字列が接続され、2番目の文字列が1番目の後に追加されます.たとえば、次のようになります.
msg  = "Hello ," + "world";

文字列が数値環境で使用されると、自動的に数値に変換されます.次に例を示します.
var product = "20"  *  "2"; //    40

JavaScriptのもう一つの面白い現象は、1つの文字列から(-)0または1つの数字を減算すると、タイプ変換の操作があります.文字列を数値に変換しようとします.しかし、加算はできません.2つの文字列を接続します.
  数値データ型と文字列データ型の両方の可能な値は無限です.ブールデータ型には2つの値しかありません.この2つの合法的な値はそれぞれ直接量trueとfalseで表されます.1つのブール値は真の値を表し、もう1つは偽の値を表します.;ブール値は容易に変換され、他のタイプからブール値に変換することも容易で、自動変換されることが多い.数値環境ではtrueは1でfalseは0である.文字列ではtrueは文字列「true」であり、falseは文字列「false」であるを選択します.逆に、ブール値で数値を使用する場合、0とNaN以外の数値はtrueに変換されます.文字列は、空の文字列と空の値以外に定義されていません.trueに変換されます.空でないオブジェクト、配列、または関数はtrueに変換されます.
 関数(function)実行可能なJavaScriptコードセグメントで、JavaScriptプログラム定義またはJavaScriptによる事前定義があります.関数は一度だけ定義されますが、JavaScriptプログラムは複数回実行または呼び出すことができます.JavaScriptの関数には、実際のパラメータまたは形式パラメータを持つことができます.JavaScriptの重要な特性の一つは、JavaScriptコードが関数を操作できることです作成します.多くの言語では、関数は言語構文の特性にすぎません.定義され、呼び出されますが、データ型ではありません.JavaScriptの関数は真の数値です.これは言語に大きな柔軟性をもたらします.これは、関数が変数、配列、オブジェクトに格納され、関数がパラメータとして他の関数に伝達されることを意味します.とても役に立ちます.
 オブジェクト(object)は、名前付きデータの集合です.これらの名前付きデータは、通常、オブジェクトのプロパティとして参照されます.オブジェクトのプロパティを参照するには、気候に実心点とプロパティ名を付けるオブジェクトを参照する必要があります.たとえば、次のようにします.
image.width
image.height

オブジェクトと属性は多くの点でJavaScript変数と似ています.属性は配列、関数、その他のオブジェクトを含む任意のタイプのデータであってもよいので、読者は次のJavaScriptコードを見ることができます.
document.myform.button

ここでは、オブジェクトのbuttonプロパティを参照します.オブジェクト自体は、オブジェクトのdocumentのmyformプロパティに格納されます.JavaScriptのオブジェクトは、任意のデータ値と任意の文字列を関連付けることができるため、関連配列として使用できます.この方法でオブジェクトを使用する場合、オブジェクトにアクセスするプロパティは、次のような構文を使用します.
image["width"]
image["height"]

  配列(array)は、オブジェクトと同様に樹脂の集合である.異なる場合、オブジェクトの各数値には名前が付けられているが、配列の各数値には数字が付けられているか、あるいは下付き(index)である.JavaScriptでは、配列のいずれかの値を取得するには、配列名を用いて、後に括弧でチョークした下付きの値を加えればよい.例えば、
a[1];

これにより、配列aにおける下付き文字が1の値が得られる.配列の下付き文字は負数ではなく、ここでの下付き文字は正の整数のみである.またJavaScriptは多くの配列をサポートしていないが、その配列要素は配列であってもよい.JavaScriptは非タイプ言語であるため、配列要素は同じタイプのものを持つ必要がないため、1つの配列に複数の配列を持つことができるデータ型の値:
var a = new Array();
a[0] = 1.11;
a[1] = 10;
a[2] = "hello";
a[3] = true;
a[4] = {x:1 , y:3};

  JavaScriptでサポートされているすべての基本データ型が上に示されています.日付と時刻はこれらの基本型に属しません.しかしJavaScriptは日付と時刻を表すオブジェクトクラスを提供し、このタイプのデータを操作することができます.
var now = new Date();
var xmas = new Date(2015,11,23);

さらに、Dateオブジェクトは、文字列または数値で表される日付値を内部のミリ秒表現に変換できる関数を定義します.これは、特定の日付計算に非常に役立ちます.
正規表現はテキストパターンを記述するために豊富で強力な構文を提供し、パターンマッチングや検索と置換を実現するためによく使用される.JavaScriptはPerlプログラム設計言語の構文を用いて正規表現を表す.JavaScriptでは正規表現はRegExpオブジェクトによって表され、RegExp()を使用することができる関数を構築して作成します.Dateオブジェクトと同様に、RegExpオブジェクトはJavaScriptの基本データ型ではありません.JavaScriptインプリメンテーションでサポートされているすべての特殊なオブジェクト型にすぎません.構文は次のとおりです.
/[1-9][0-9]*/

正規表現の構文は複雑で、後で詳しく説明します.