ฉันมักจะเห็นสถานการณ์ในรหัส JavaScript บทความนี้วิเคราะห์การใช้เครื่องหมายอัศเจรีย์ 2 เครื่องหมายใน JavaScript ในรูปแบบตัวอย่างในลักษณะเชิงลึกมากขึ้น แบ่งปันสำหรับการอ้างอิงของคุณ การวิเคราะห์เฉพาะมีดังนี้:
!! ใน JavaScript นั้นมีเหตุผล "ไม่ใช่ non" นั่นคือ "ไม่ใช่" อีกครั้งบนพื้นฐานของตรรกะ "ไม่ใช่" ผ่าน! หรือ !! สามารถเปลี่ยนเป็นประเภทบูลและการตัดสินอื่น ๆ ได้หลายประเภท
1. สถานการณ์แอปพลิเคชัน: พิจารณาว่ามีวัตถุอยู่หรือไม่
สมมติว่ามีวัตถุ JSON เช่นนี้:
{color: "#e3e3e3", "font-weight": "bold"}มันจะต้องได้รับการตัดสินว่ามีอยู่หรือไม่ใช้มัน !! ดีที่สุด
หากคุณเพิ่งพิมพ์วัตถุคุณไม่สามารถระบุได้ว่ามีอยู่:
var temp = {color: "#a60000", "font-weight": "bold"}; Alert (temp);ผลลัพธ์: [วัตถุ: วัตถุ]
หากคุณใช้วัตถุ JSON! หรือ !! คุณสามารถระบุได้ว่าวัตถุ JSON มีอยู่:
var temp = {color: "#a60000", "font-weight": "bold"}; แจ้งเตือน (! temp);ผลลัพธ์: เท็จ
var temp = {color: "#a60000", "font-weight": "bold"}; แจ้งเตือน (!! temp);ผลลัพธ์: จริง
2. อนุสัญญาการแปลงประเภทต่าง ๆ เป็นประเภทบูลผ่าน! หรือ!
1. ส่งคืนจริงสำหรับ "ไม่ใช่" ของ Null
var temp = null; แจ้งเตือน (อุณหภูมิ);
ผลลัพธ์: NULL
var temp = null; แจ้งเตือน (! temp);
ผลลัพธ์: จริง
var temp = null; แจ้งเตือน (!! temp);
ผลลัพธ์: เท็จ
2. ส่งคืนจริงสำหรับ "ไม่ใช่" ที่ไม่ได้กำหนด
var temp; Alert (temp);
ผลลัพธ์: ไม่ได้กำหนด
var temp; Alert (! temp);
ผลลัพธ์: จริง
var temp; แจ้งเตือน (!! อุณหภูมิ);
ผลลัพธ์: เท็จ
3. ส่งคืนจริงสำหรับ "ไม่ใช่" ของสตริงที่ว่างเปล่า
var temp = ""; การแจ้งเตือน (อุณหภูมิ);
ผลลัพธ์: ว่างเปล่า
var temp = ""; แจ้งเตือน (! temp);
ผลลัพธ์: จริง
var temp = ""; แจ้งเตือน (!! อุณหภูมิ);
ผลลัพธ์: เท็จ
4. ส่งคืนเท็จสำหรับจำนวนเต็มที่ไม่ใช่ศูนย์ "ไม่ใช่"
var temp = 1; การแจ้งเตือน (อุณหภูมิ);
ผลลัพธ์: 1
var temp = 1; การแจ้งเตือน (! temp);
ผลลัพธ์: เท็จ
var temp = 1; แจ้งเตือน (!! อุณหภูมิ);
ผลลัพธ์: จริง
5. ส่งคืนจริงสำหรับ "ไม่ใช่" ของ 0
var temp = 0; การแจ้งเตือน (อุณหภูมิ);
ผลลัพธ์: 0
var temp = 0; แจ้งเตือน (! temp);
ผลลัพธ์: จริง
var temp = 0; แจ้งเตือน (!! อุณหภูมิ);
ผลลัพธ์: เท็จ
6. ส่งคืนเท็จสำหรับสตริง "ไม่ใช่"
var temp = "ab"; แจ้งเตือน (อุณหภูมิ);
ผลลัพธ์: AB
var temp = "ab"; แจ้งเตือน (! temp);
ผลลัพธ์: เท็จ
var temp = "ab"; แจ้งเตือน (!! temp);
ผลลัพธ์: จริง
7. ส่งคืนเท็จให้กับ "ไม่ใช่" ของอาร์เรย์
var temp = [1,2]; แจ้งเตือน (อุณหภูมิ);
ผลลัพธ์: 1,2
var temp = [1,2]; แจ้งเตือน (! temp);
ผลลัพธ์: เท็จ
var temp = [1,2]; แจ้งเตือน (!! temp);
ผลลัพธ์: จริง
ฉันเชื่อว่าคำอธิบายในบทความนี้มีค่าอ้างอิงบางอย่างสำหรับการเรียนรู้ของทุกคนเกี่ยวกับการเขียนโปรแกรม JavaScript