undefined型
JavaScriptのundefinedは未定義を表すプリミティブな値です。変数に値がセットされていないとき、戻り値が無い関数、オブジェクトに存在しないプロパティにアクセスしたとき、配列に存在しないインデックスでアクセスしたときなどに現れます。
javascriptlet name;console.log(name); //=> undefinedfunction func() {}console.log(func()); //=> undefinedconst obj = {};console.log(obj.name); //=> undefinedconst arr = [];console.log(arr[1]); //=> undefined
javascriptlet name;console.log(name); //=> undefinedfunction func() {}console.log(func()); //=> undefinedconst obj = {};console.log(obj.name); //=> undefinedconst arr = [];console.log(arr[1]); //=> undefined
undefinedリテラル#
JavaScriptでは同じプリミティブ型でも、論理型や数値型がリテラルがあるのに対し、undefinedにはリテラルはありません。実はundefinedは変数です。グローバル定数のようなものと理解して構いません。
undefinedの型注釈#
TypeScriptでundefined型の型注釈を行うには、undefinedを用います。
typescriptconst x: undefined = undefined;
typescriptconst x: undefined = undefined;
戻り値のない関数はundefinedになりますが、TypeScriptで戻り値なしを型注釈で表現する場合、undefinedではなくvoidを用います。詳しくは関数の説明をご覧ください。