--- title: 'ReferenceError: reference to undefined property "x"' slug: Web/JavaScript/Reference/Errors/Undefined_prop tags: - Errors - JavaScript - ReferenceError - Strict Mode translation_of: Web/JavaScript/Reference/Errors/Undefined_prop ---
ReferenceError: reference to undefined property "x" (Firefox)
strict モード でのみ、{{jsxref("ReferenceError")}} の警告が出ます。
存在しないオブジェクトのプロパティにアクセスしようとしています。プロパティにアクセスする方法は 2 つあります。詳細については、メンバー演算子参照ページを見てください。
未定義プロパティを参照することによるエラーは、strict モードのコードでのみ発生します。非 strict コードでは、暗黙的に無視されます。
このケースでは、"bar" は未定義のプロパティです。
"use strict"; var foo = {}; foo.bar; // ReferenceError: reference to undefined property "bar"
エラーを避けるには、"bar" プロパティを定義するか、使用する前に "bar" プロパティが存在するか確認する必要があります(たとえば、{{jsxref("Object.prototype.hasOwnProperty()")}} メソッドを使用します)。
"use strict"; var foo = {}; foo.bar = "moon"; console.log(foo.bar); // "moon" if (foo.hasOwnProperty("bar") { console.log(foo.bar); }