ReferenceError: reference to undefined property "x"
Mensagem
ReferenceError: reference to undefined property "x" (Firefox)
Tipo de Erro
(Apenas no Firefox) O aviso ReferenceError é reportado somente se a preferência javascript.options.strict está definida como true.
O que está errado?
O script tentou acessar uma propriedade de objeto que não existe. Existem duas maneiras de acessar propriedades; veja a página de referência must be a string para saber mais sobre eles.
Exemplos
>Errado
Neste caso, a propriedade bar é uma propriedade não definida, assim, ocorrerá um ReferenceError.
js
var foo = {};
foo.bar; // ReferenceError: reference to undefined property "bar"
Certo
Para evitar o erro, você precisa adicionar uma definição de bar ao objeto ou verificar a existência da propriedade bar antes de tentar acessá-la; Uma maneira de fazer isso é usar o método Object.prototype.hasOwnProperty (), desta forma:
js
var foo = {};
// Define a propriedade bar
foo.bar = "moon";
console.log(foo.bar); // "moon"
// Teste para ter certeza se bar existe antes de acessa-lo
if (foo.hasOwnProperty("bar")) {
console.log(foo.bar);
}
Veja também
- must be a string