22 of 264 menu

typeof演算子

typeof演算子は パラメータの型(数値、文字列、オブジェクト)を 判定することができます。この演算子は 型を表す文字列('number''string''object')を返します。

nullに対しては、 演算子は'object'を返します(これは 言語の仕様上の既知のエラーです)。関数に対しては、 演算子は'function'を返します。これは 利便性のためであり、'function'という型が 存在するわけではありません。

構文

typeof演算子には2つの構文があります (どちらの構文も同じように動作します):

typeof パラメータ; typeof(パラメータ);

数値に対してtypeofがどのように動作するか 見てみましょう:

typeof 1;

このコードを実行した結果、 値はnumberとなります:

'number'

次に、パラメータとして文字列を指定してみましょう:

typeof 'str';

コード実行の結果:

'string'

次に、パラメータとして論理値 trueを指定してみましょう:

typeof true;

コード実行の結果:

'boolean'

undefinedの型が何であるか 見てみましょう:

typeof undefined;

コードを実行した後、 やはりundefinedとなります:

'undefined'

空のオブジェクトの型を 調べてみましょう:

typeof {};

コード実行の結果:

'object'

次に、空の配列の型を 調べてみましょう:

typeof [];

結果として、やはり 'object'が得られます:

'object'

nullの型を 調べてみましょう:

typeof null;

結果として、やはり 'object'が得られます。これは 言語の仕様上の既知のエラーです:

'object'

次に、空の関数の型を判定しましょう:

typeof function() {};

コードを実行した後、 'function'が得られます。 このような型が存在しないにもかかわらずです。この文字列は 関数を判定する際のユーザーの利便性のため に用意されています:

'function'

数値のみを出力する関数を 書いてみましょう:

function printNumber(number) { if (typeof number === 'number') { console.log(number); } } printNumber(2); printNumber('str'); printNumber(3);

関連項目

  • isNaN関数は、
    NaNかどうかのチェックを行います
  • isFinite関数は、
    数値が有限かどうかをチェックします
日本語
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItalianoქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
当サイトでは、サイトの動作、分析、パーソナライゼーションのためにクッキーを使用しています。 データ処理はプライバシーポリシーに従って行われます。
すべて受け入れる 設定 拒否