Jak zapisać w JS warunek: a i b są UJEMNE, a a jest większe od -50?
Źle. Mieszanie
&&/|| zmienia logikę.Źle.
|| wymaga tylko jednego warunku.Dobrze. Wszystkie warunki naraz (
&&).Źle.
|| nie wymaga, by b było ujemne.Trzy warunki muszą zachodzić jednocześnie - a ujemne, b ujemne i a większe od -50 - więc łączymy je
&&: if (a < 0 && b < 0 && a > -50). „Ujemne” to < 0. Dlatego ten warunek jest poprawny.Pozostałe zapisy źle łączą warunki.
|| wystarczyłoby spełnić jeden z nich, więc przeszłyby też liczby dodatnie. Mieszanie || z && zmienia sens („a ujemne LUB (b ujemne i a > -50)”). Wszystkie trzy naraz wymusza a < 0 && b < 0 && a > -50.