Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> JavaScript

JavaScript Ternary Operator: เขียนเงื่อนไขแบบสั้นในบรรทัดเดียว

Ternary Operator คืออะไร?

ออเปอเรเตอร์ 3 ตัว (Ternary) คือทางเลือกแทน if...else สำหรับเงื่อนไข True/False ไวยากรณ์:

condition ? valueIfTrue : valueIfFalse;

เปรียบเทียบ If-Else กับ Ternary

If-Else (5 บรรทัด)

let user_is_right_age;
if (customer.age >= 18) {
  user_is_right_age = true;
} else {
  user_is_right_age = false;
}

Ternary (1 บรรทัด)

let user_is_right_age = customer.age >= 18 ? true : false;

ตัวอย่างการใช้งานจริง

คำนวณค่าจัดส่งตามประเภทลูกค้า

let userIsExpressCustomer = true;
let shippingTime = userIsExpressCustomer ? 48 : 72; // 48 ชั่วโมง

Nested Ternary (หลายเงื่อนไข)

let userIsExpress = false;
let userIs24Hour = true;
let shippingTime = userIsExpress ? 48 : userIs24Hour ? 24 : 72;
// ผลลัพธ์: 24

⚠️ Nested Ternary อ่านยาก ควรใช้ If-Else หรือ Switch Case แทนถ้าซับซ้อนเกินไป

สรุป

Ternary Operator เขียนสั้น กระชับ เหมาะกับเงื่อนไข True/False อย่างเดียว แต่ไม่ควรใช้ซ้อนกันมากเกินไป เพราะจะทำให้โค้ดอ่านยาก