Przejdź do głównej zawartości

W przykładzie z błędem, w konsoli zostanie zalogowana wartość It's not false!

W kodzie pojawił się błąd wewnątrz instrukcji warunkowej. Zamiast operatora porównania użyty został operator przypisania.

W przypadku operatora przypisania, domyślnie zwracana jest wartość przypisywana.

booleanValue = !false to po prostu przypisanie zanegowanej wartości false, czyli wartości true.

Przypisanie true do zmiennej booleanValue zwraca wartość true, więc instrukcja warunkowa się wykonuje i console.log() zostaje wywołany.

Naprawienie błędu polega na poprawieniu błędnie użytego operatora przypisania i zastąpieniu go operatorem porównania.

Możemy też użyć alternatywnej konstrukcji i zamiast === !false, zapisać to jako !== false.