Үнэн/Худал (Boolean)
Boolean нь зөвхөн хоёр утгатай өгөгдлийн төрөл: true (үнэн) эсвэл false (худал). Энгийн мэт санагдах ч boolean нь программчлалын хамгийн чухал ухагдахуунуудын нэг — шийдвэр гаргах, нөхцөл шалгах, давталт зогсоох бүгд boolean-д тулгуурладаг.
let isLoggedIn = true;
let isPaid = false;
let hasCompleted = false;
console.log(isLoggedIn); // true
console.log(isPaid); // false
Харьцуулалтын операторууд
Хоёр утгыг харьцуулахад харьцуулалтын операторуудыг ашиглана. Үр дүн нь үргэлж boolean байна.
let a = 10;
let b = 20;
console.log(a > b); // false — a нь b-ээс их үү?
console.log(a < b); // true — a нь b-ээс бага уу?
console.log(a >= 10); // true — a нь 10-аас их буюу тэнцүү үү?
console.log(a <= 10); // true — a нь 10-аас бага буюу тэнцүү үү?
console.log(a === 10); // true — a нь 10-тай тэнцүү үү?
console.log(a !== b); // true — a нь b-ээс ялгаатай уу?
=== ба == ялгаа
JavaScript-д тэгш байдлыг шалгах хоёр оператор байдаг. Үргэлж === ашигла.
console.log(5 == "5"); // true — утга тэнцүү, төрлийг харьцуулдаггүй
console.log(5 === "5"); // false — утга тэнцүү боловч төрөл ялгаатай
console.log(0 == false); // true — заль мэхтэй
console.log(0 === false); // false — зөв, учир нь 0 нь number, false нь boolean
== нь автоматаар төрөл хөрвүүлдэг бөгөөд энэ нь олон гэнэтийн алдаа гаргадаг. === нь утга болон төрөл хоёуланг нь шалгадаг тул аюулгүй.
Логик операторууд
Хэд хэдэн нөхцөлийг нэгтгэхэд логик операторуудыг ашиглана.
&& — ба (AND): Хоёул үнэн байвал true
let age = 20;
let hasTicket = true;
console.log(age >= 18 && hasTicket); // true — хоёул биелсэн
console.log(age >= 18 && !hasTicket); // false — нэг нь биелээгүй
|| — эсвэл (OR): Наад зах нь нэг нь үнэн байвал true
let isStudent = false;
let isTeacher = true;
console.log(isStudent || isTeacher); // true — нэг нь үнэн
console.log(isStudent || false); // false — хоёул худал
! — үгүйсгэх (NOT): Утгыг эсрэгээр нь хөрвүүлнэ
let isDone = false;
console.log(!isDone); // true
console.log(!true); // false
console.log(!!isDone); // false — давхар үгүйсгэл, boolean болгоход хэрэглэнэ
Truthy ба Falsy утгууд
JavaScript-д boolean биш утгуудыг нөхцөлд ашиглахад автоматаар true эсвэл false болж хөрвөдөг. Энэ ойлголтыг truthy/falsy гэдэг.
Falsy утгууд — нөхцөлд false болж тооцогддог:
console.log(Boolean(false)); // false
console.log(Boolean(0)); // false
console.log(Boolean("")); // false — хоосон string
console.log(Boolean(null)); // false
console.log(Boolean(undefined)); // false
console.log(Boolean(NaN)); // false
Truthy утгууд — бусад бүх зүйл:
console.log(Boolean(1)); // true
console.log(Boolean("а")); // true — хоосон бус string
console.log(Boolean([])); // true — хоосон array хүртэл!
console.log(Boolean({})); // true — хоосон object хүртэл!
Практик жишээ:
const username = "";
if (username) {
console.log(`Тавтай морил, ${username}!`);
} else {
console.log("Нэвтрэх шаардлагатай."); // Энэ мөр ажиллана
}
Дараагийн хичээлд:
Нөхцөл шалгах if/else бүтцийг үзнэ — boolean утгуудыг ашиглан программ хэрхэн шийдвэр гаргадгийг судална.