typeof はオペランドの前に置かれる単項演算であり、オペランドは任意の型にすることができます。戻り値は、オペランドの型を説明する文字列です。
明確にする必要があります:
typeof 演算子は型情報を文字列として返します。 typeof の戻り値としては、「number」、「string」、「boolean」、「object」、「function」、「unknown」の 6 つがあります。 typeof 構文のかっこはオプションです。
typeof は単項演算子であり、返される結果は常に文字列であり、オペランドごとに異なる結果を返します。
Typeof 演算の具体的なルールは次のとおりです:
1. 数値型のオペランドの場合、typeof によって返される値は数値です。例: typeof(1)、戻り値は数値です。
上記は通常の数値であり、型にはまらない数値の場合、返される結果も数値になります。たとえば、typeof(NaN)、NaN は、それ自体は数値型ですが、JavaScript における特殊な非数値値を表します。
JavaScript には、いくつかの特殊な数値タイプがあります:
Infinity は、無限大、特殊な値 NaN、数値以外の特殊な値を表します。 Number.MAX_VALUE、表現できる最大の数、Number.MIN_VALUE、表現できる最小の数(ゼロに最も近い) Number.POSITIVE_INFINITY は、正の無限大の特殊な値を表します。
上記の特殊な型の場合、演算に typeof を使用します。 、結果は数値になります。
2. 文字列型の場合、typeof によって返される値は文字列です。たとえば、typeof("123") によって返される値は文字列です。
3. ブール型の場合、typeof によって返される値はブール値です。たとえば、typeof(true) によって返される値はブール値です。
4. オブジェクト、配列、null の場合、戻り値は object です。たとえば、typeof(window)、typeof(document)、および typeof(null) によって返される値はすべてオブジェクトです。
5. 関数型の場合、戻り値は function です。例: typeof(eval) と typeof(Date) によって返される値は関数です。
6. オペランドが定義されていない場合 (存在しない変数、関数、未定義など)、unknown が返されます。例: typeof(sss) と typeof(unknown) はどちらも未定義を返します。