{category}

JavaScript - その他の演算子

typeof

タイプオブ(基本的な構文

意味 型の判定


typeofとは?

オペランドの型を文字列として返します。

typeofの具体的な使い方

typeof演算子の基本的な使用例

function checkType(value) {
  console.log(`${value} の型: ${typeof value}`);
}

checkType(42);
checkType('Hello');
checkType(true);
checkType(undefined);
checkType(null);
checkType({});
checkType([]);
checkType(() => {});

👇出力結果

42 の型: number
Hello の型: string
true の型: boolean
undefined の型: undefined
null の型: object
[object Object] の型: object
 の型: object
() => {} の型: function

様々な値に対するtypeofの結果を確認します。数値、文字列、真偽値、undefined、null、オブジェクト、配列、関数それぞれの型を表示します。

typeof演算子を使った条件分岐

function processInput(input) {
  if (typeof input === 'number') {
    return input * 2;
  } else if (typeof input === 'string') {
    return input.toUpperCase();
  } else {
    return 'Unsupported type';
  }
}

console.log(processInput(10));
console.log(processInput('hello'));
console.log(processInput(true));

👇出力結果

20
HELLO
Unsupported type

入力の型に基づいて異なる処理を行う例です。数値の場合は2倍、文字列の場合は大文字化、それ以外の場合はエラーメッセージを返します。

typeofに関するよくある質問

Q. typeofの返り値の種類は?
A. typeofの返り値は以下の7種類です:'undefined'、'boolean'、'number'、'string'、'object'、'function'、'symbol'(ES6以降)。
Q. nullのtypeofはなぜobject?
A. これはJavaScriptの歴史的な仕様バグです。null値に対してtypeofを使うと'object'が返されますが、これは誤りであり、修正されていません。互換性の問題で修正できないままになっています。
Q. 配列の型判定にtypeofは適切?
A. 配列に対してtypeofを使うと'object'が返されるため、配列とオブジェクトを区別できません。配列かどうかを判定するには、Array.isArray()メソッドを使用するか、instanceof演算子を使用する方が適切です。

typeofが学べる書籍の紹介

「プログラミング単語帳」を使って、プログラミングの単語を英単語のように学習してみませんか?
プログラミング単語帳には、JavaScriptのtypeofや=、var、instanceof、などのような実務でよく使われる単語が数百以上収録されています。
この書籍には、プログラミングの単語の意味や読み方、単語の使い方がわかる例文などが掲載されており、いつでもどこでもプログラミングの学習ができます。

よく使われる単語にだけ絞って学習することができるので、効率的にプログラミングが学習できます。

1日5分の暗記でプログラミンが身に付く!プログラミング単語帳 公式ストアで発売中!

HTML編、CSS編、JavaScript編、PHP編、Ruby編、その他単語編の6シリーズ分が公式ストアにて販売中です。気になった方はぜひ購入してみてください。


JavaScriptを学べる「プログラミング単語帳」アプリ

プログラミング単語帳がアプリになりました!JavaScriptはもちろん、10種類のプログラミング言語の中から、よく使われる単語をスマホで学習できます。

収録単語は2,000単語以上!
現在は、HTML、CSS、JavaScirpt、PHP、Laravel、Ruby、Python、MySQL、Linux、など10カテゴリーの単語帳が1つのアプリに収録されています。

いつでも、どこでも、隙間時間を有効活用して、プログラミングを効率的に学べるので、ぜひダウンロードしてみてください。

2024年7月アップデート情報:「Laravel」カテゴリーが追加されましました!

2024年8月アップデート情報:「MySQL」「Linux」カテゴリーが追加されましました!


関連するそのほかの単語

=

代入

種類: 宣言・代入

var

変数の宣言

種類: 宣言・代入

instanceof

オブジェクトの型判定

種類: その他の演算子

addEventListener()

イベントリスナーの追加

種類: 基本的なイベント操作

Promise.resolve()

値からPromise生成

種類: Promise