⊗jsPmCdCWB 119 of 505 menu

Compararea valorilor cu tipul boolean în JavaScript

În exemplul anterior am folosit pentru comparație operatorul ===. În acest caz, variabila noastră era comparată pentru egalitate cu true atât ca valoare, cât și ca tip.

Pentru o astfel de comparație se poate folosi și operatorul ==. Dacă în variabila test va fi întotdeauna una dintre valorile true sau false, atunci nimic nu se va schimba:

let test = true; // aici scriem fie true, fie false if (test == true) { console.log('+++'); } else { console.log('---'); }

Dar dacă în variabila test pot apărea orice valori, atunci totul devine mai complex.

În acest caz, dacă în variabila test nu este o valoare booleană, atunci această valoare va fi mai întâi convertită la boolean și abia apoi va fi comparată.

Să presupunem, de exemplu, că în variabila test se află numărul 1. În acest caz, el va fi mai întâi convertit la tipul logic, adică la true. Și apoi va fi efectuată comparația:

let test = 1; if (test == true) { console.log('+++'); // acesta se va executa } else { console.log('---'); }

Dar, de exemplu, numărul 0 se convertește la false. Și condiția noastră, ca rezultat, va afișa 'incorect':

let test = 0; if (test == true) { console.log('+++'); } else { console.log('---'); // acesta se va executa }

De fapt, o astfel de comparație poate fi rescrisă explicit în următoarea formă:

let test = 1; if (Boolean(test) == true) { console.log('+++'); } else { console.log('---'); }

Amintiți-vă și scrieți care valori la convertirea la tipul logic dau false.

Fără a rula codul, determinați ce se va afișa în consolă:

let test = 1; if (test == true) { console.log('+++'); } else { console.log('---'); }

Fără a rula codul, determinați ce se va afișa în consolă:

let test = 0; if (test == true) { console.log('+++'); } else { console.log('---'); }

Fără a rula codul, determinați ce se va afișa în consolă:

let test = 1; if (test == false) { console.log('+++'); } else { console.log('---'); }

Fără a rula codul, determinați ce se va afișa în consolă:

let test = 1; if (test != true) { console.log('+++'); } else { console.log('---'); }

Fără a rula codul, determinați ce se va afișa în consolă:

let test = ''; if (test == false) { console.log('+++'); } else { console.log('---'); }

Fără a rula codul, determinați ce se va afișa în consolă:

let test; if (test == true) { console.log('+++'); } else { console.log('---'); }

Fără a rula codul, determinați ce se va afișa în consolă:

let test = 3 * 'a'; if (test == true) { console.log('+++'); } else { console.log('---'); }
Română
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Folosim cookie pentru funcționarea site-ului, analiză și personalizare. Prelucrarea datelor are loc în conformitate cu Politica de confidențialitate.
acceptă toate configurează respinge