Jestem doświadczonym programistą C++/Java pracującym w JavaScript po raz pierwszy. Używam Chrome jako przeglądarki.Wymuś wyjątek/błąd JavaScript podczas odczytu niezdefiniowanej właściwości obiektu?
Stworzyłem kilka klas JavaScript z polami i metodami. Kiedy czytam pole obiektu, które nie istnieje (z powodu literówki z mojej strony), środowisko wykonawcze Javascript nie generuje błędu ani wyjątku. Najwyraźniej takie pola odczytu są "niezdefiniowane". Na przykład:
var foo = new Foo();
foo.bar = 1;
var baz = foo.Bar; // baz is now undefined
wiem, że mogę sprawdzić dla równości wobec „niezdefiniowane” jak wspomniano w „Detecting an undefined object property in JavaScript”, ale to wydaje się nudny ponieważ czytałem z pól obiektów Często w moim kodu.
Czy istnieje sposób wymuszenia na wystąpieniu błędu lub wyjątku podczas odczytu niezdefiniowanej właściwości?
Dlaczego zgłasza się wyjątek podczas odczytu niezdefiniowanej zmiennej (w przeciwieństwie do niezdefiniowanej właściwości obiektu)?
Wystarczy popatrzeć na proxy JavaScript. – nalply