Logical Operators

1️⃣ معرفی عملگرهای منطقی
جاوااسکریپت سه عملگر منطقی اصلی دارد:

  • && → AND (و)

  • || → OR (یا)

  • ! → NOT (نقیض)

2️⃣ عملگر AND (&&)
اگر هر دو شرط true باشند، خروجی true است.

console.log(true && true); // true console.log(true && false); // false let age = 20; let hasID = true; console.log(age >= 18 && hasID); // true

3️⃣ عملگر OR (||)
اگر یکی از شرط‌ها true باشد، خروجی true است.

console.log(true || false); // true console.log(false || false); // false let isAdmin = false; let isEditor = true; console.log(isAdmin || isEditor); // true

4️⃣ عملگر NOT (!)
مقدار را معکوس می‌کند:

console.log(!true); // false console.log(!false); // true let isLoggedIn = false; console.log(!isLoggedIn); // true → چون مقدار اصلی false است

5️⃣ Short-Circuit Evaluation (ارزیابی کوتاه)
جاوااسکریپت در عملگرهای منطقی به صورت کوتاه ارزیابی می‌کند:

console.log(false && "Hello"); // false → چون شرط اول false است console.log(true || "Hello"); // true → چون شرط اول true است
  • در && اگر شرط اول false باشد، ادامه بررسی نمی‌شود.

  • در || اگر شرط اول true باشد، ادامه بررسی نمی‌شود.

6️⃣ استفاده کاربردی در مقادیر پیش‌فرض

let name = ""; let user = name || "کاربر مهمان"; console.log(user); // "کاربر مهمان" let count = 5; let result = count && "موجودی کافی"; console.log(result); // "موجودی کافی"

نکات مهم

  • && → هر دو شرط باید true باشند.

  • || → حداقل یکی true باشد.

  • ! → مقدار را برعکس می‌کند.

  • می‌توان از && و || برای مقدار پیش‌فرض استفاده کرد.