Ինչպես մենք բոլորս գիտենք, «Ճշմարիտ» == ճշմարիտ ակնկալվում է, որ ճշմարիտբայց ելքը, երբ այն կատարում եք, ցույց է տալիսսխալ:
ինչու? Ո՞րն է սրա հիմքում ընկած տրամաբանությունը:

Նույն շփոթությամբ և կասկածով ես սկսեցի ավելի շատ ուսումնասիրել JavaScript-ում համեմատության մասին և վերջապես հանգեցի եզրակացության, հիմա առանց ժամանակ կորցնելու՝ եկեք խորամուխ լինենք, թե ինչու և ինչպես է դա կեղծ:

Ըստ JavaScript-ի(String=1)== (բուլյան արտահայտություն =1) պետք է լինի ճշմարիտ, բայց սխալ:

Համեմատության կանոնները JS-ում (JavaScript) օգտագործում են Աբստրակտ հավասարության համեմատության ալգորիթմ որը ցույց է տալիս, որ.

Երբ գտնում է նման հայտարարություններ,

true == «true» (բուլյան արտահայտություն/համար==տող), այն փորձում էտողը վերածել թվային արժեքի (որը թիվ չէ):

i.e

ճշմարիտ == «ճշմարիտ»,

1 = NaN,

Այսպիսով, արդյունքը ցույց է տալիս կեղծ: