- แบบทดสอบนี้มุ่งเน้นไปที่การทำงานของ คลาส Date ใน JavaScript ภายใต้สถานการณ์อินพุตที่หลากหลาย
- มีเนื้อหาการทดลองเกี่ยวกับผลลัพธ์ที่คลาส Date ส่งกลับเมื่อได้รับค่าอินพุตที่ผู้ใช้อาจไม่คาดคิด (เช่น "wtf") การเกิดข้อยกเว้นหรือไม่ และวิธีการประมวลผลภายใน
- ผ่านแบบทดสอบนี้ คุณจะเข้าใจได้ง่ายถึง ช่วงเวลายกเว้น, กลยุทธ์การพาร์ส, การไม่เป็นไปตามมาตรฐาน และรูปแบบพฤติกรรมที่ไม่คาดคิดของ JavaScript Date
- มีจุดประสงค์เพื่อช่วยเพิ่มความเข้าใจให้กับนักพัฒนา JavaScript และผู้รับผิดชอบการทดสอบ เพื่อลด ข้อผิดพลาดในการจัดการวันที่ และความไม่แน่นอนที่อาจเกิดขึ้นในโปรแกรมจริง
1 ความคิดเห็น
ความคิดเห็นบน Hacker News
undefined behaviourมานานเกือบ 10 ปี ราวกับเป็นหลักฐานชี้ขาดว่าเทคโนโลยีนั้นไร้ความหมาย ทั้งที่จริงแล้วแค่คนเข้าใจแนวคิดของเทคโนโลยีผิดไปเอง การเอาอิฐไปใช้ตักน้ำไม่ได้ไม่ใช่เรื่องน่าขำ แต่แปลกที่ทุกคนกลับคาดหวังว่า JavaScript จะต้องจับ ~ความผิดพลาด~ ทุกอย่างเป็น error หรือแก้ให้เองได้ทั้งหมด มันเป็นเป้าหมายที่ดีนะ แต่ถ้าทำไม่ได้ก็ไม่ควรเอามาโอ้อวดเหมือนกัน ฉันรู้สึกว่าบรรยากาศแบบนี้ยืดเยื้อมานานเกินไปNaNและไม่ต้องการการแปลงสตริงแบบกึ่ง ๆ กลาง ๆ ด้วยDate.parse()ตรง ๆ มันก็ไม่ได้เป็นปัญหาใหญ่ขนาดนั้น ในทางปฏิบัติก็มักใช้ไลบรารีวันที่เฉพาะทางอยู่แล้ว เพราะแม้แต่ส่วนที่พอใช้ได้ของ Date เองก็ไม่ได้ยอดเยี่ยมอะไรนักarray.filterกับstructuredcopyแล้วที่เหลือก็เมินหมด เพราะแทบไม่มีประโยชน์จริงและมีแต่เพิ่มพื้นผิวการโจมตี แล้ว TypeScript ก็ออกมา ซึ่งฉันคิดว่าเป็นโอกาสที่สูญเปล่าครั้งใหญ่ที่สุดในประวัติศาสตร์ของ JS จนถึงตอนนี้ การเขียนโค้ด JS ให้ถูกต้องจริง ๆ ก็คือการใช้ภาษานี้อย่างระมัดระวังเพียง 1% เท่านั้น และแม้กระทั่งส่วนนั้นก็ยังต้องใช้อย่างรอบคอบ