
สวัสดีครับ บทความนี้จะมีเนื้อหาเกี่ยวกับการใช้งาน || และ ?? ในภาษา JavaScript ครับ ซึ่งการใช้งานโดยทั่วไปจะมีความคล้ายๆกัน แต่จะมีรายละเอียดเล็กน้อยที่มีความต่างกัน ถ้าเราไม่ทราบอาจจะทําให้ Code ที่เราเขียนมี Bug ได้
เรามาเริ่มกันตรงที่การใช้งานโดยทั่วไปกันก่อนครับ โดยปกติเวลาเราต้องการเลือกใช้ข้อมูลที่ไม่ใช่ค่า null จากสองตัวแปรเราสามารถเขียนแบบสั้นๆโดยไม่ต้องใช้ if…else ได้โดยใช้ || และ ?? ตามตัวอย่างนี้ครับ
const a = null;
const b = 'this is b';
const result1 = a || b;
const result2 = a ?? b;
// Output
// result1: this is b
// result2: this is b
จาก Code ด้านบนหมายความว่า ทั้ง result1 และ result2 จะมีค่าเท่ากับ a ก็ต่อเมื่อ a != null หรือถ้า a == null ทั้ง result1 และ result2 จะมีค่าเท่ากับ b ทันที
ในตัวอย่างก็ดูให้ผลลัพธ์ที่เหมือนกัน แต่ในความเป็นจริงทั้ง || และ ?? มีความแตกต่างกันอยู่เล็กน้อยครับ ลองดูตามตัวอย่างนี้ครับ
const a = '';
const b = 'this is b';
const result1 = a || b;
const result2 = a ?? b;
console.log('result1: ', result1);
console.log('result2: ', result2);
// Output
// result1: this is b
// result2:
ถ้าเราเปลี่ยน a ให้มีค่าเป็น "" ผลลัพธ์ที่ได้จะออกมาต่างกันดังนี้คือ result2 จะมีค่าเท่ากับ "" เนื่องจาก ?? จะมองว่า "" ไม่มีค่าเป็น null จึงทําให้ result2 ได้ค่าของ a ไป นั่นก็คือ "" นั่นเอง
|| และ ?? ต่างกันตรงที่ ?? จะมองว่า null และ "" เป็นคลละตัวกัน ในทางกลับกัน || จะมองว่า null และ "" เป็นตัวเดียวกัน จึงทําให้ผลลัพธ์ออกมาแตกต่างกัน
วิธีการ Config ให้ apt-get ผ่าน proxy ได้ เราจะต้องแก้ไขไฟล์ "/etc/apt/apt.conf"(ถ้าไม่มีไฟล์อยู่ ให้สร้างขึ้นมาใหม่) แล้วใส่คําสั่งนี้เข้าไป
PL2303 USB to serial TTL เป็น อุปกรณ์ที่ใช้แปลงจาก USB เป็น serial TTL ส่วนใหญ่จะนําไปใช้เชื่อมต่อ Computer เข้ากับ Raspberry pi
มาทําความรู้จัก DigitalOcean กันก่อนDigitalOcean เป็น Simple Cloud Hosting คือผู้ให้บริการ Hosting ที่เราสามารถทําอะไรกับเครื่องได้ทุกอย่าง เหมือนกับว่าเรามีเครื่อง server มาใช้ทําอะไรก็ได้ตามที่เราต้องการ จุดเด่นของ DigitalOcean คือ ค่าบริการที่ถูกมาก เริ่มต้นเพียงเดือนละ $5 หรือ ประมาณ 180 บาท นอกจากค่าบริการที่ถูกแล้วยัง **ใช้งานง่าย **อีกด้วย หลังจากที่ผมได้ใช้งานมาสักพัก การ support ปัญหาต่างๆดีมาก