8 คะแนน โดย xguru 2020-08-22 | 1 ความคิดเห็น | แชร์ทาง WhatsApp
  • รองรับ Variadic* Tuple Type

→ สามารถทำ generic type spread ได้

→ ตัวดำเนินการ ... สามารถอยู่ตรงกลางได้ด้วย

  • รองรับ Label ใน Tuple

  • เพิ่มตัวดำเนินการ &&=, ||=, ??=

  • สามารถกำหนดประเภทของ catch เป็น unknown หรือ any ได้

→ หากใช้ unknown จะเป็นการระบุชัดว่าต้องตรวจสอบประเภทด้วย typeof/instanceof เป็นต้น ก่อนจัดการเสมอ

  • เมื่อใช้ JSX สามารถกำหนดเองได้ด้วย jsxFragmentFactory

  • สามารถอนุมานประเภทของพร็อพเพอร์ตีจาก constructor ได้

  • แม้ใช้ตัวเลือก --noEmitOnError ก็ยังแคชผลการคอมไพล์ก่อนหน้าไว้เพื่อปรับปรุงความเร็วในการบิลด์ได้

  • สามารถใช้ -incremental ร่วมกับตัวเลือก --noEmit ได้

การปรับปรุงเอดิเตอร์ (Visual Studio Code)

  • ฟีเจอร์แปลง Optional Chaining & Nullish Coalescing อัตโนมัติ

  • รองรับ /** @deprecated */

  • รองรับ Partial Semantic Mode ตอนเริ่มต้นใช้งาน - คือการรันเซิร์ฟเวอร์แบบเบาที่ใช้กับไฟล์โค้ดที่เปิดอยู่เพียงบางส่วน เพื่อลดเวลาที่ใช้เมื่อโหลดโปรเจกต์ขนาดใหญ่

  • ฟังก์ชัน Auto-Import ที่ฉลาดขึ้น

Breaking Changes

  • มีการเปลี่ยนแปลงประเภทที่เกี่ยวข้องกับ DOM ใน lib.d.ts

→ นำ document.origin ออก และแนะนำให้ใช้ self.origin

  • หาก override getter/setter ของคลาสแม่ จะแสดงข้อผิดพลาดเสมอ

  • เมื่ออยู่ในสถานะ strictNullChecks ตัวถูกดำเนินการของ delete ต้องเป็น any, unknown, never หรือ optional

  • Variadic : หมายถึงการรับอาร์กิวเมนต์จำนวนไม่ตายตัว เช่น อาร์กิวเมนต์ของ printf

1 ความคิดเห็น

 
xguru 2020-08-22

ไม่มีการเปลี่ยนแปลงครั้งใหญ่เท่ากับตอน 3.0

→ ดังนั้นถ้ายังไม่เคยใช้ TypeScript ตอนนี้แหละคือเวลาที่เหมาะที่สุด! เลยมีประโยคโปรโมตแบบนี้เขียนไว้ช่วงต้นของบทความ

ในการสำรวจนักพัฒนาของ Stack Overflow ก็อยู่อันดับ 2 ของภาษาโปรด รองจาก Rust