มาพูดถึงตรรกะและ (&&) มันสามารถเข้าใจได้จากสามระดับ
ระดับแรกนั้นง่ายที่สุดซึ่งเป็นผลรวมตรรกะระหว่างค่าบูลีนง่าย ๆ เมื่อทั้ง lvalues และ rvalues เป็นจริงให้กลับมาจริงทั้งสองฝ่ายเป็นเท็จหรือด้านหนึ่งของค่าเป็น fasle กลับเท็จ (และการดำเนินการ);
ระดับที่สอง (เท็จ, null, ไม่แน่นอน, 0, -0, nan และ "" เป็นค่าเท็จทั้งหมดและค่าอื่น ๆ ทั้งหมดรวมถึงวัตถุเป็นค่าที่แท้จริง) ดำเนินการและดำเนินการกับ "ค่าที่แท้จริง" และ "ค่าเท็จ" เหล่านี้และส่งคืน "ค่าจริง" หรือ "ค่าเท็จ";
เป็นที่น่าสังเกตว่า (&&) ไม่คืนค่าบูลีนที่เคยเป็นมาเสมอ มันจะส่งคืนค่าที่แท้จริงหรือค่าเท็จที่ปรากฏในระดับที่สอง แต่ "ค่าที่แท้จริง" และ "ค่าเท็จ" เหล่านี้คืออะไร? ดังนั้นจึงมีการแนะนำความเข้าใจในระดับที่สาม
ความเข้าใจในระดับที่สามนั้นง่ายมาก เมื่อตัวถูกดำเนินการด้านซ้ายในคำสั่งเป็นค่าเท็จตัวถูกดำเนินการด้านขวาของคำสั่งจะไม่ถูกคำนวณและตัวถูกดำเนินการด้านซ้ายจะถูกส่งกลับโดยตรงเป็นผลการคำนวณของนิพจน์ เมื่อตัวถูกดำเนินการด้านซ้ายเป็นค่าที่แท้จริงค่าของตัวถูกดำเนินการด้านขวาจะถูกส่งคืนเป็นผลการคำนวณของนิพจน์
ตัวอย่างดังนี้:
var o = {s: 1}; // สร้างวัตถุ var p = null; // สร้าง null o && o.s // return 1 ซึ่งควรเป็น o คือค่าที่แท้จริงดังนั้นส่งคืนค่าของ OS P && p.x // return null ซึ่งควรเป็น p คือค่าเท็จดังนั้นอย่าคำนวณ PX และส่งคืนค่าของ p <br> o && o.b; // สิ่งนี้จะทำให้เกิดข้อผิดพลาดประเภทเนื่องจาก O เป็นค่าที่แท้จริงและคุณต้องส่งคืน OB แต่ไม่มี OBสิ่งนี้จะเข้าใจง่าย
แม้ว่า && สามารถใช้เพื่อส่งคืนค่าที่แท้จริงและเท็จในกรณีส่วนใหญ่ค่าที่แท้จริงเป็นจริงและค่าเท็จเป็นเท็จ
มาพูดคุยเกี่ยวกับตรรกะหรือ (||) เรียนรู้จากตัวอย่างหนึ่งและนำไปใช้กับด้านอื่น ๆ ตรรกะและมีความเข้าใจตรรกะหรือคล้ายกันสามระดับดังนั้นฉันจะไม่เขียนรายละเอียด
ตรรกะและวิธีการที่พบบ่อยที่สุดคือการเลือกนิพจน์ค่าที่แท้จริงจากกลุ่มของตัวถูกดำเนินการทางเลือก
ยกตัวอย่าง
var min = min_value || sum.min_value || 100;
ก่อนอื่นพบ min_value หากไม่ได้กำหนดไว้ให้ดูในวัตถุผลรวม หากยังไม่ได้คุณสามารถกำหนดค่าตายได้ 100 ครั้งเท่านั้น
วิธีนี้มักใช้เพื่อตั้งค่าเริ่มต้นสำหรับพารามิเตอร์ในฟังก์ชัน
ยกตัวอย่าง
ฟังก์ชั่นเพิ่ม (a, b) {b = b || 0; ส่งคืน A+B; -เมื่อค่าเริ่มต้นไม่ได้ตั้งค่าเป็น B, B เท่ากับ 0; ฟังก์ชั่นเพิ่มส่งคืน A+0 ซึ่งเป็นค่าของ A;
ตรรกะไม่ใช่ (!)
จุดประสงค์ของเขาคือการผกผันค่าบูลีนของตัวถูกดำเนินการตัวอย่างเช่น: ถ้า x เป็นค่าที่แท้จริง! x จะส่งกลับเท็จถ้า x เป็นค่าเท็จ! x จะส่งกลับจริง
เมื่อส่งคืนค่าบูลีนค่าจริงและเท็จเหล่านี้จะถูกแปลงเป็นค่าบูลีนแล้วผกผัน
นี่คือการแนะนำ! ประเพณีทั่วไป
บางครั้งเราต้องตรวจสอบว่ามีตัวแปรอยู่หรือตรวจสอบว่าค่ามีค่าที่ถูกต้องแล้วใช้มัน !!
ตัวอย่างเช่นหากค่าที่ส่งคืนจากฟังก์ชั่นเป็นค่าที่ถูกต้องให้ใช้ !! นักเรียน ถ้ามันส่งคืนจริงก็จะเป็นค่าที่ถูกต้อง
บทความข้างต้นมีความเข้าใจอย่างลึกซึ้งเกี่ยวกับการใช้งานและการใช้การแสดงออกเชิงตรรกะและการใช้การแสดงออกที่ไม่ใช่ต้นฉบับเป็นเนื้อหาทั้งหมดที่ฉันได้แบ่งปันกับคุณ ฉันหวังว่าคุณจะให้ข้อมูลอ้างอิงและฉันหวังว่าคุณจะสนับสนุน wulin.com มากขึ้น