JavaScripti kolmekordse võrdusmärgi VS topeltvõrdse märk - näidetega selgitatud võrdlusoperaatorid

Võib-olla olete JavaScriptis näinud topelt- ja kolmekordset võrdusmärki. Aga mida need tähendavad?

Lühidalt: ==oma olemuselt teisendab tüübi ja ===ei teisenda tüüpi.

Double Equals ( ==) kontrollib ainult väärtuste võrdsust. Oma olemuselt teeb see sundi. See tähendab, et enne väärtuste kontrollimist teisendab see muutujate tüübid omavahel sobivaks.

Teisest küljest ===ei tee Triple Equals ( ) tüüpi sundi. See kontrollib, kas võrreldavatel muutujatel on mõlemad sama väärtus ja sama tüüp.

OK - nii aitame teil mõne näite abil erinevusest paremini aru saada. Mõelge kõigi nende puhul nende avalduste väljundile.

Näide 1:

const foo = "test" const bar = "test" console.log(foo == bar) //true console.log(foo === bar) //true 

Väärtus ja liik nii fooja baron sama. Seetõttu on tulemus truemõlemale.

Näide 2: ‌

const number = 1234 const stringNumber = '1234' console.log(number == stringNumber) //true console.log(number === stringNumber) //false 

Siin on väärtus numberja stringNumbernäeb välja sarnane. Kuid tüüpi numberon Numberja tüüp stringNumbertähendab string. Kuigi väärtused on samad, pole tüüp sama. Seega ==kontroll naaseb true, kuid väärtuse ja tüübi kontrollimisel väärtus on false.

Näide 3:

console.log(0 == false) //true console.log(0 === false) //false 

Põhjus: sama väärtus, erinevat tüüpi. Tüüp sunni

See on huvitav juhtum. Kasutajaga 0kontrollimisel falseon väärtus sama. See on nii, sest 0ja falseon sama hinna JavaScript, aga kui kontrollitakse tüüp ja väärtusest, on vale, sest 0on numberja falseon boolean.

Näide 4:

const str = "" console.log(str == false) //true console.log(str === false) //false

Tühja stringi väärtus falseon JavaScriptis sama. Seega ==tagastab tõene. Kuid tüüp on erinev ja ===tagastab seega vale.

Millal peaksite kasutama ==ja millal peaksite kasutama ===?

Kui kahtlete, kasutage ===. See säästab teid võimalike vigade hulgast.

Kui toetate kasutamist, kus saate sissetulevate andmete tüübi suhtes veidi leebe olla, siis kasutage ==. Näiteks, kui API aktsepteerib nii "true"ja truekliendi kasutamine ==. Lühidalt öeldes ärge kasutage, ==kui teil pole selleks tugevat kasutamist.

Siin on teie jaoks mugav JavaScripti tõttabel, et näidata, kui keeruline on JavaScripti võrdsus:

Kui teile see artikkel meeldis, jälgige värskenduste saamiseks kindlasti mind twitteris.

K: Kui palju ruumi vabaneb, kui Suurbritannia lahkub EL-ist?

.

.

.

V: 1 GB # DevJoke #NotAJoke

- Shruti Kapoor (@ shrutikapoor08) 4. oktoober 2019