0
Mitä eroa on vertailuoperaattoreilla

Olli Perikanta

Julkaistu 16.1.2024

Mitä eroa on vertailuoperaattoreilla ”==” ja ”===” JavaScriptissä?

JavaScriptissä == ja === ovat vertailuoperaattoreita, mutta niillä on merkittävä ero.

Löysempi vertailuoperaattori ”==”

  • Tämä vertailuoperaattori vertailee arvoja löysemmin.
  • Se suorittaa automaattisen tyyppimuunnoksen tarvittaessa ennen vertailua.
  • Esimerkiksi, jos vertaillaan merkkijonoa ja numeroa, == yrittää kyseinen vertailuoperaattori muuntaa ne samaksi tyypiksi ennen vertailua.

Esimerkki:

if ('5' == 5) {
  console.log('onnistui');
} else {
    console.log('epäonnistui');
}

Palauttaa ”onnistui”, koska ’5’ muunnetaan numeroksi ennen vertailua.

Tiukempi vertailuoperaattori ”===”

  • Tämä vertailuoperaattori vertailee arvoja tiukemmin.
  • Se tarkistaa sekä arvon, että tyypin, eikä suorita automaattista tyyppimuunnosta.
  • Esimerkiksi, jos vertaillaan merkkijonoa ja numeroa, === ei kyseinen vertailuoperaattori yritä muuntaa niitä samaksi tyypiksi.

Esimerkki:

if ('5' === 5) {
  console.log('onnistui');
} else {
    console.log('epäonnistui');
}

Palauttaa ”epäonnistui”, koska vertailun kohteena olevat ovat eri tyyppejä.

Suositeltavaa on käyttää vertailuoperaattorina === koska tällöin virheelliset vertailutulokset vähenee.

Senior Frontend kehittäjä, joka on erikoistunut WordPressin koodaamiseen ja räätälöityjen ratkaisujen tekemiseen.

Kommentit

Näyttää siltä, että sinulla on mahdollisuus olla ensimmäinen kommentoija! Jäikö jotain kysyttävää artikkelista tai haluatko antaa palautetta? Jätä kommentti ja aloita kekustelu.

Jätä kommentti

Kommenttikäytäntö: Kommentointi on tervetullutta ja arvostamme aikaa, jonka lukijat käyttävät ideoiden jakamiseen ja palautteen antamiseen. Kaikki kommentit kuitenkin valvotaan manuaalisesti ja roskapostiksi tai yksinomaan myynninedistämistarkoituksessa pidetyt kommentit poistetaan.