Zpráva

TypeError: "x" is (not) "y"

Příklady:
TypeError: "x" is undefined
TypeError: "x" is null
TypeError: "undefined" is not an object
TypeError: "x" is not an object or null
TypeError: "x" is not a symbol

Typ chyby

TypeError.

Co se pokazilo?

Je zde neočekávaný typ. Často k tomu dochází s undefined nebo null hodnoty.

Také určité metody, jako Object.create() nebo Symbol.keyFor(), vyžadují specifický typ který musí být poskytnut.

Příklady

Chybné užití

// nedefinované a nulové případy, ve kterých metoda podřetězce nebude fungovat
var foo = undefined;
foo.substring(1); // TypeError: foo is undefined

var foo = null;
foo.substring(1); // TypeError: foo is null


// Některé metody mohou vyžadovat určitý typ
var foo = {}
Symbol.keyFor(foo); // TypeError: foo is not a symbol

var foo = 'bar'
Object.create(foo); // TypeError: "foo" is not an object or null

Oprava problému

Pro opravu chyby je potřeba ověřit hodnotu undefined nebo null. Pro ověření hodnot je možno využít typeof operátor.

if (typeof foo !== 'undefined') {
  // Now we know that foo is defined, we are good to go.
}

Viz také

Štítky a přispěvatelé do dokumentace

Štítky: 
Přispěvatelé této stránky: filipsedivy
Poslední aktualizace od: filipsedivy,