Webエンジニア向けプログラミング解説動画をYouTubeで配信中!
▶ チャンネル登録はこちら

【JavaScript ECMAScript】TypeError: "x" is (not) "y"エラーの使い方

TypeError: "x" is (not) "y"エラーの使い方について、初心者にもわかりやすく解説します。

作成日: 更新日:

基本的な使い方

TypeError: "x" is (not) "y"オブジェクトは、JavaScriptの実行中に値の型が期待されるものと異なる場合に発生するエラーを表すオブジェクトです。このエラーは、プログラムが特定のデータ型を期待しているにもかかわらず、実際には異なる型のデータが提供されたり、存在しないプロパティやメソッドにアクセスしようとしたりする際に発生します。

具体的には、以下のような状況で発生することが多いです。まず、関数やメソッドに、引数として予期しない型の値が渡された場合です。例えば、数値が期待される場所に文字列が渡された場合などがこれに該当します。次に、オブジェクトのプロパティにアクセスしたり、メソッドを呼び出したりしようとした際に、そのオブジェクトがnullundefinedである場合です。nullundefinedはプロパティやメソッドを持たないため、このエラーが発生します。さらに、new演算子でコンストラクターではない値を呼び出そうとした場合や、特定のデータ型しか受け付けない組み込み関数に対して、間違った型の値を渡した場合にも発生します。

エラーメッセージ中の"x"は操作対象の値や変数、"y"は期待される型や、問題の原因となっている対象を示していることが多く、これらを参考に問題の特定を進めることができます。このエラーに遭遇した場合は、まず該当する箇所の変数や引数の型が期待通りであるか、またオブジェクトがnullundefinedでないかを注意深く確認し、必要に応じて型変換を行うか、値の存在チェックを追加することで問題を解決できます。

公式リファレンス: TypeError: "x" is (not) "y"

構文(syntax)

1const notAFunction = "この変数は文字列型です。";
2notAFunction();

引数(parameters)

引数なし

引数はありません

戻り値(return)

戻り値なし

戻り値はありません

関連コンテンツ

関連プログラミング言語