Junior
Фарқи байни операторҳои муқоиса чӣ гуна аст?
sobes.tech AI
Ҷавоб аз AI
== (беназари муқоиса) арзишҳоро муқоиса мекунад, кӯшиш мекунад, ки онҳоро ба як навъи умумӣ табдил диҳад, агар онҳо гуногун бошанд. Ин метавонад ба натиҷаҳои ғайричашмдошт оварда расонад.
=== (қатъии муқоиса) арзишҳоро ва навъҳои додаҳоро бе табдил додани навъҳо муқоиса мекунад. Ин навъи муқоиса одатан бештар пешгӯишаванда ва бехатар аст.
Масалан:
// Беназари муқоиса
console.log(1 == '1'); // true ('1' сатр ба рақам 1 табдил меёбад)
console.log(null == undefined); // true
// Қатъии муқоиса
console.log(1 === '1'); // false (навъҳо гуногун)
console.log(null === undefined); // false
Ҷадвали фарқият:
| Оператор | Навъи муқоиса | Табдил додани навъҳо | Пешгӯишавандагӣ |
|---|---|---|---|
== |
Беназари | Бале | Камтар |
=== |
Қатъӣ | Не | Беҳтар |
Дар аксари ҳолатҳо, истифодаи === тавсия дода мешавад, то аз табдил додани навъҳои ғайрирасмӣ ва хатоҳои вобаста ба он пешгирӣ шавад.