Esta página ha sido traducida del inglés por la comunidad.Aprende más y únete a la comunidad de MDN Web Docs.
TypeError: "x" is (not) "y"
Mensaje
TypeError: "x" is (not) "y"Examples:TypeError: "x" is undefinedTypeError: "x" is nullTypeError: "undefined" is not an objectTypeError: "x" is not an object or nullTypeError: "x" is not a symbol
In this article
Tipo de error
¿Qué salió mal?
Tipo inesperado. Esto ocurre amenudo con valoresundefined onull .
Además, ciertos métodos, comoObject.create () oSymbol.keyFor(), requieren de un tipo específico, que debe ser proporcionado, ejemplos
Casos inválidos
js
// undefined and null cases on which the substring method won't workvar foo = undefined;foo.substring(1); // TypeError: foo is undefinedvar foo = null;foo.substring(1); // TypeError: foo is null// Certain methods might require a specific typevar foo = {};Symbol.keyFor(foo); // TypeError: foo is not a symbolvar foo = "bar";Object.create(foo); // TypeError: "foo" is not an object or nullCómo solucionar el problema
Para fijar un puntero nulo a indefinidos o valores nulos, puede utilizar el operador typeof, por ejemplo
js
if (typeof foo !== "undefined") { // Ahora sabemos que foo está definido, ahora podemos continuar.}