=== (tiukka yhtäsuuruus) vertaa arvoa ja tyyppiä ilman muunnosta. == (löysä yhtäsuuruus) suorittaa ensin type coercion -muunnoksen, mikä johtaa yllättäviin tuloksiin.
js
== ;
== ;
== ;
== ;
== ;
=== ;
=== ;
=== (tiukka yhtäsuuruus) vertaa arvoa ja tyyppiä ilman muunnosta. == (löysä yhtäsuuruus) suorittaa ensin type coercion -muunnoksen, mikä johtaa yllättäviin tuloksiin.
== ;
== ;
== ;
== ;
== ;
=== ;
=== ;
Koersiontsäännöt eivät ole ilmeisiä ja johtavat virheisiin. Esimerkiksi [] == ![] on true (kuuluisa erikoisuus). Harvoin haluat JavaScript:in muuntavan tyyppejä vaietiksi vertailun aikana.
Käytä aina === (ja !==). Ainoa yleinen, tarkoituksellinen poikkeus on null tai undefined tarkistaminen yhdessä:
if (value == null) { ... } // true for BOTH null and undefined — a deliberate idiom
Kaikissa muissa tapauksissa tiukka yhtäsuuruus pitää vertailut ennakoitavina. Objektien vertailemiseksi tarvitset syvän yhtäsuuruuden tarkistuksen (ne vertailevat viitteen perusteella, joten {a:1} === {a:1} on false).