Porovnávání
důležitost: 5
Jaký bude výsledek těchto výrazů?
5 > 4
"ananas" > "jablko"
"2" > "12"
undefined == null
undefined === null
null == "\n0\n"
null === +"\n0\n"
5 > 4 → true
"ananas" > "jablko" → false
"2" > "12" → true
undefined == null → true
undefined === null → false
null == "\n0\n" → false
null === +"\n0\n" → false
Některé z důvodů:
- Samozřejmě true.
- Slovníkové porovnání, proto false.
"a"je menší než"j". - Opět slovníkové porovnání, první znak
"2"je větší než první znak"1". - Hodnoty
nullaundefinedse rovnají jedině sobě navzájem. - Striktní rovnost je striktní. Různé typy na obou stranách vedou k výsledku false.
- Obdobně jako ve
(4)senullrovná jediněundefined. - Striktní rovnost s různými typy vrací false.