動的に型が決まるjavascriptは変数を宣言する時、型の指定がありません。
プログラムの実行時には、文字列、数値、真偽値、null、undefined等の値の型が決定づけられます。
また、データ型はプリミティブ型とオブジェクトに分けられます。
プリミティブ型は基本型と呼ばれています。
オブジェクト型は参照型と呼ばれます。
上記のプリミティブ型は、値を指定すると変更できない性質をもち、
オブジェクト型は値を指定した後に、値自体を変更できる性質があります。
プログラム内に直接記述して表現する値をリテラルと呼びます。
実行時にもプログラムに書いた値がそのままの意味を持ちます。
下記に例を書きます。
10 1.0 "リテラル" 'リテラル' true false null undefined
上記は実行してもプログラム上の処理はなにもされません。
次のような例もあります
var a = 'test'; console.log(a);
この場合の変数aに代入した「test」もリテラル(文字列)で表現されたものと呼べます。
「test」と一度代入されたものは、プログラム実行中は変更しない(変数自体は書き換えられることがあっても)ので、プリミティブ型の値と呼ぶことができます。
また、オブジェクトリテラル、配列リテラル、関数リテラル、正規表現、などもあります。
{a:5, b:6} [3, 4, 5, 6]
上記はそのまま記述するとエラーになります。