MDN’s new design is in Beta! A sneak peek: https://blog.mozilla.org/opendesign/mdns-new-design-beta/

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

To tłumaczenie jest niekompletne. Pomóż przetłumaczyć ten artykuł z języka angielskiego.

Message

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

Examples:
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 błędu

TypeError.

Co poszło nie tak?

Pojawił się nieoczekiwany typ, dlatego pojawił się błąd. Błąd pojawia się często jako undefined albo null dla określonych wartości.

Dodatkowo niektóre metody takie jak Object.create() albo Symbol.keyFor(), wymagają określonego typu, który musi być zadeklarowany.

Przykłady

Nieprawidłowe przypadki, które mogą się pojawić

// undefined oraz null to przypadki, dla których pojawi się błąd
var foo = undefined;
foo.substring(1); // TypeError: foo is undefined

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


//  Niektóre metody mogą wymagać określonego typu
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

Jak naprawić?

Aby naprawić problem, w przypadku wyświetlenia 'undefined' bądź 'null' dla określonych wartości można użyć operatora typeof.

Przykład

if (typeof foo !== 'undefined') {
  // Teraz wiemy, że zmienna foo jest zdefiniowana
}

Zobacz też

Autorzy i etykiety dokumentu

 Autorzy tej strony: devMike
 Ostatnia aktualizacja: devMike,