MDN wants to learn about developers like you: https://qsurvey.mozilla.com/s3/MDN-dev-survey

メッセージ

ReferenceError: reference to undefined property "x" (Firefox)

エラータイプ

strict モード でのみ、ReferenceError の警告が出ます。

何がうまくいかなかったのか?

存在しないオブジェクトのプロパティにアクセスしようとしています。プロパティにアクセスする方法は 2 つあります。詳細については、メンバー演算子参照ページを見てください。

未定義プロパティを参照することによるエラーは、strict モードのコードでのみ発生します。非 strict コードでは、暗黙的に無視されます。

無効なケース

このケースでは、"bar" は未定義のプロパティです。

"use strict"; 

var foo = {};
foo.bar; // ReferenceError: reference to undefined property "bar"

有効なケース

エラーを避けるには、"bar" プロパティを定義するか、使用する前に "bar" プロパティが存在するか確認する必要があります(たとえば、Object.prototype.hasOwnProperty() メソッドを使用します)。

"use strict";

var foo = {};

foo.bar = "moon";
console.log(foo.bar); // "moon"

if (foo.hasOwnProperty("bar") {
  console.log(foo.bar);
}

関連項目

ドキュメントのタグと貢献者

 このページの貢献者: YuichiNukiyama
 最終更新者: YuichiNukiyama,