log.konsoli(3<10>1) ?
Wyrażenie 3<10>1
ma wartość, false
ponieważ operatory porównania są oceniane od lewej do prawej i 3<10
jest prawdziwe, ale true>1
fałszywe.
Wyjaśnienie
Wyrażenie 3<10>1
używa dwóch operatorów porównania <
i >
, aby porównać trzy liczby: 3
, 10
, i 1
. Operatory porównania mają asocjatywność od lewej do prawej, co oznacza, że są oceniane od lewej do prawej. Zatem wyrażenie jest oceniane jako (3<10)>1
.
Pierwsze porównanie, 3<10
, ma wartość, true
ponieważ 3
jest mniejsze niż 10
. Więc wyrażenie jest teraz true>1
. W JavaScript true
wartość jest traktowana jako 1
, a false
wartość jest traktowana jako 0
w kontekstach numerycznych. Więc, true>1
jest równoważne z 1>1
, czyli false
.
Na koniec console.log()
funkcja jest używana do wyświetlenia wyniku wyrażenia, którym jest false
, na konsoli.
Bibliografia
- Porównanie JavaScript i operatory logiczne