JavaScript 再入門(その2) データ型

データ型

JavaScriptで扱うことのできるデータの型は次のとおりです。
ほかにもError型などがあります。

  • undefined
    • データ型が未定義で値がない。
  • null
    • 値がない (オブジェクト型)
  • Number
    • 数値型 (浮動小数点数)
  • BigInt *ES2020
    • 長整数型 (浮動小数点数)
  • String
    • 文字列型
  • Boolean
    • 論理型
  • Symbol *ES2015
    • シンボル型
  • Object
    • オブジェクト型
    • Function (関数)
    • Array (配列)
    • Date (日付)
    • RegExp (正規表現)

データ型は typeof 演算子で調べることができます。

var val1 ;
console.log(val1,typeof(val1)); // undefined 'undefined'
var val2 = null ;
console.log(val2,typeof(val2)); // null 'object'
var val3 = 123 ;
console.log(val3,typeof(val3)); // 123 'number'
var val4 = 123n ;
console.log(val4,typeof(val4)); // 123n 'bigint'
var val5 = 'SakuraString' ;
console.log(val5,typeof(val5)); // SakuraString string
var val6 = true ;
console.log(val6,typeof(val6)); // true 'boolean'
var val7 = Symbol() ;
console.log(val7,typeof(val7)); // Symbol(sakuraSymbol) 'symbol'
var val8 = { 'key' : 'sakuraObject' } ;
console.log(val8,typeof(val8)); // {key: 'sakuraObject'} 'object'
try{
	var valx = 2n + 5;
} catch (e) {
	console.log(e.name + ': ' + e.message ,typeof(e)) ; // TypeError: Cannot mix BigInt and other types, use explicit conversions object
}

実行結果

undefined 'undefined'
null 'object'
123 'number'
123n 'bigint'
SakuraString string
true 'boolean'
Symbol() 'symbol'
{key: 'sakuraObject'} 'object'
TypeError: Cannot mix BigInt and other types, use explicit conversions object

参考:
MDN 開発者向けのウェブ技術 > JavaScriptのデータ型とデータ構造
MDN 開発者向けのウェブ技術 > JavaScript「再」入門