javascript - วิธีเปิดการหยุดชั่วขณะเมื่อเกิดข้อยกเว้นที่ไม่ถูกจับใน Google Chrome Canary?
ในบทความนี้พูดถึงการเปิดการหยุดชั่วคราวเมื่อเกิดข้อยกเว้นที่ไม่ได้จับ https://developer.chrome.com/devtools/docs/javascript-debugging
ฉันสามารถเห็นเฉพาะ 'หยุดชั่วคราวเมื่อเกิดข้อยกเว้น' ทั้งใน Chrome และ Canary ฉันกำลังใช้ Chrome Canary เวอร์ชัน 43.0.2344.2 canary (64-bit)
ฉันกำลังได้รับข้อผิดพลาด Uncaught SyntaxError: Unexpected token : ซึ่งชี้ไปยังตำแหน่งหนึ่ง (เช่น VM272) และมันยากมากที่จะติดตามหาตำแหน่งโดยไม่มีร่องรอยของ call stack
ฉันได้ค้นหาและพบว่าฉันสามารถเพิ่ม
> window.onerror = function() { debugger;}
ในคอนโซล แต่ก็ไม่ได้ทำให้ฉันได้สแตกแทรซ หน้าต่าง Scope ให้ข้อมูลตัวแปรมากมาย แต่ฉันก็ยังค่อนข้างสับสนอยู่
คำตอบ #1
เอกสารนั้นล้าสมัยเล็กน้อย
ในเวอร์ชันใหม่ของ Chrome ปุ่ม "หยุดชั่วคราวเมื่อเกิดข้อยกเว้น" จะไม่สามารถสลับระหว่าง 3 สถานะ (ปิดการใช้งาน, "หยุดชั่วคราวเมื่อเกิดข้อยกเว้น", "หยุดชั่วคราวเมื่อเกิดข้อยกเว้นที่ไม่ได้ถูกจับ") อีกต่อไป แต่จะสลับได้เพียงสองสถานะ (ปิดการใช้งาน และ "หยุดชั่วคราวเมื่อเกิดข้อยกเว้น").
เพื่อที่จะสามารถหยุดการทำงานได้เมื่อเกิด ข้อยกเว้นที่ถูกจับ พวกเขาได้เพิ่มกล่องเลือกนี้เข้ามา (ซึ่งมีประโยชน์หากคุณมีตัวจัดการข้อยกเว้นระดับทั่วไปรู้ใน GWT แต่ยังต้องการให้หยุดเมื่อข้อยกเว้นถูกขว้างออกมา)
ดังนั้นถ้าคุณไม่จับข้อยกเว้น การตั้งค่าที่คุณแสดงในสกรีนช็อตของคุณควรใช้งานได้


