このページの2つのバージョン間の差分を表示します。
両方とも前のリビジョン 前のリビジョン 次のリビジョン | 前のリビジョン | ||
js:basic:variable [2021/09/13 13:50] tanaka [文字列型 String] |
js:basic:variable [2021/10/11 14:13] (現在) tanaka [データ型] |
||
---|---|---|---|
行 63: | 行 63: | ||
* Function --- 非データ構造である関数のための型 | * Function --- 非データ構造である関数のための型 | ||
- | これら以外に、データ値を集合として表現する '' | + | 本章ではこれらのデータ型のうち プリミティブ型について説明し、構造型については他の章に譲ることにします。詳しくはMDNの以下の項を参照してください。 |
- | + | ||
- | 本章ではこれらのデータ型のうち プリミティブ型について説明し、構造型については他の章に譲ることにします。 | + | |
- | + | ||
- | 詳しくはMDNの以下の項を参照してください。 | + | |
* [[https:// | * [[https:// | ||
行 159: | 行 155: | ||
文字列は英数字記号などの文字の並びのことです。JavaScriptでは文字列を扱うデータとして string 型があります。但し、他の言語で見られるようなひとつの文字データを表す型(例えば C/C++ の char型)は存在しません。 | 文字列は英数字記号などの文字の並びのことです。JavaScriptでは文字列を扱うデータとして string 型があります。但し、他の言語で見られるようなひとつの文字データを表す型(例えば C/C++ の char型)は存在しません。 | ||
- | 文字列型は内部的にユニコード(UTF-16)が使用されます。string 型のユニコードについては本章「[[js: | + | 文字列型は内部的にユニコード(UTF-16)が使用されます。string 型のユニコードについては本編の「[[js: |
文字列リテラル | 文字列リテラル | ||
行 189: | 行 185: | ||
JavaScriptでは他の言語と同様に文字列リテラル内でバックスラッシュを使用することにより、特別な文字を表現することが出来ます。これはエスケープシーケンスと呼ばれます。 | JavaScriptでは他の言語と同様に文字列リテラル内でバックスラッシュを使用することにより、特別な文字を表現することが出来ます。これはエスケープシーケンスと呼ばれます。 | ||
- | |コード|出力| | + | ^コード^出力^ |
|\n|改行| | |\n|改行| | ||
|\t|水平タブ| | |\t|水平タブ| | ||
行 249: | 行 245: | ||
\\ | \\ | ||
- | ==== 真偽値 | + | ==== 論理型 |
+ | 論理型は論理値を表す型です。論理値は真または偽のいずれかの値となります。これは以下のリテラルで表現します。 | ||
- | ==== オブジェクト Object ・・・ 連想配列 ==== | + | <code javascript> |
+ | true // 真 | ||
+ | false // 偽 | ||
+ | </ | ||
- | リテラル:{x: | + | 例えば次の例を見て下さい |
- | アクセス:data.x(オブジェクト形式) または data[' | + | |
- | ==== 関数 Function ==== | + | <sxh javascript; |
+ | a == 1; | ||
+ | </ | ||
+ | この式は変数 a が 1 に等しいかどうかを調べ、そうである場合は true を、そうでない場合は false を真偽値として返します。 | ||
+ | 論理値は if文や while文などの制御構造で使うのが一般的です。 | ||
- | ==== 配列 Array ・・・ 添字配列 ==== | + | <sxh javascript; |
+ | if (a == 1) { | ||
+ | b = 1; | ||
+ | } else { | ||
+ | b = 2; | ||
+ | } | ||
+ | </ | ||
- | リテラル:['foo','bar', ・・・ | + | === Truthy と Falsy === |
- | アクセス:data[0], | + | |
+ | JavaScriptでは C/C++ や PHP などと同様に if文などの条件部分の中で真偽値以外にもそれに準じた値を指定することができます。このような真偽値そちて扱われるものを Truthy(真として扱われる)または Falsy (偽として扱われる)と呼びます。 | ||
+ | |||
+ | 以下のものは Falsy として扱われます。 | ||
+ | |||
+ | |Falsy|| | ||
+ | |論理値の偽|false| | ||
+ | |数の0|0| | ||
+ | |非数(NaN)|Nan| | ||
+ | |空の文字列|< | ||
+ | |ヌル値|null| | ||
+ | |未定義値|undefined| | ||
+ | |||
+ | これ以外のものは全て Truthy として扱われます。 | ||
+ | |Truthy|| | ||
+ | |論理値の真|true| | ||
+ | |数の1|1| | ||
+ | |文字列の1|'1'| | ||
+ | |文字列の0|'0'| | ||
+ | |空の配列|[]| | ||
+ | |空のオブジェクト|{}| | ||
+ | |||
+ | 文字列の' | ||
+ | |||
+ | \\ | ||
+ | |||
+ | ==== シンボル型 Symbol==== | ||
+ | |||
+ | \\ | ||
==== ヌル Null ==== | ==== ヌル Null ==== | ||
- | * 空を表現する | + | null値は値が無いことを表す特殊な値です。考え方としては、null値はNull型の唯一の値という解釈もできます。またオブジェクト型としてオブジェクトが存在しないという意味づけをすることも出来ます。 |
+ | \\ | ||
==== 未定義 Undefined ==== | ==== 未定義 Undefined ==== | ||
- | * 値が未保存 | + | JavaScriptでは、null値以外に未定義(undefined値)という特殊な値もあります。undefined値は Undefined型の唯一の値です。 |
- | * 未定義のプロパティ | + | |
- | * 戻り値のない関数の参照 | + | |
+ | 値が代入されていない変数の値は undefined値になります。例えば以下のような場合です。 | ||
+ | |||
+ | * 未定義の変数またはプロパティ | ||
+ | * 値が代入されていない変数 | ||
+ | * 値が返されていない関数から戻り値を受け取った場合 | ||
+ | |||
+ | <sxh javascript; | ||
+ | let undefined_value; | ||
+ | let a = undefined_value; | ||
+ | </ | ||
+ | |||
+ | \\ | ||
+ | |||
+ | |||
+ | ==== オブジェクト Object ==== | ||
+ | |||
+ | 本編の[[js: | ||
+ | |||
+ | \\ | ||
+ | |||
+ | ==== 関数 Function ==== | ||
+ | |||
+ | 本編の[[js: | ||
+ | |||
+ | \\ | ||