การจัดกลุ่ม iterable แบบซิงโครนัส
Map.groupBy() ใช้จัดกลุ่มรายการใน iterable ให้เป็นรายการใน Map โดยใช้คีย์ที่ callback ส่งกลับมา
Object.groupBy() สร้างอ็อบเจ็กต์แทน Map
Promise.withResolvers()
- เพิ่มวิธีใหม่ในการสร้าง Promise ที่ต้องการ resolve
แฟลกของ regular expression /v
- แฟลกใหม่ของ regular expression
/v (.unicodeSets) เปิดใช้งานความสามารถต่อไปนี้:
- escape สำหรับคุณสมบัติของสตริง Unicode (
Emoji เป็นคุณสมบัติของ code point Unicode ผ่าน /u และ RGI_Emoji เป็นคุณสมบัติใหม่ของสตริง Unicode ผ่าน /v)
- string literal ภายใน character class ผ่าน
\q{}
- การดำเนินการแบบเซตสำหรับ character class
- การจับคู่ที่ดีขึ้นเมื่อมีการปฏิเสธ Unicode property escape ด้วย
/i ผ่าน [^···]
ความสามารถใหม่ของ ArrayBuffer และ SharedArrayBuffer
- ArrayBuffer:
- ปรับขนาดได้โดยตรง
- เพิ่มเมธอด
.transfer() สำหรับการถ่ายโอน
- SharedArrayBuffer:
- ขยายขนาดได้ แต่ย่อขนาดไม่ได้
- ไม่สามารถถ่ายโอนได้ จึงไม่มีเมธอด
.transfer() แบบที่ ArrayBuffers มี
การตรวจสอบว่าสตริงเป็น well-formed หรือไม่
- มีเมธอดใหม่ 2 ตัวสำหรับตรวจสอบว่าสตริง (UTF-16) เป็น well-formed หรือไม่:
- เมธอดของ String
.isWellFormed() ใช้ตรวจสอบว่าสตริง JavaScript เป็น well-formed และไม่มี lone surrogate หรือไม่
- เมธอดของ String
.toWellFormed() จะคืนสำเนาของตัวรับที่แทนที่ lone surrogate แต่ละตัวด้วย code unit 0xFFFD (ซึ่งแทน code point ตัวเลขเดียวกันที่มีชื่อว่า "อักขระทดแทน") ดังนั้นผลลัพธ์จึงเป็น well-formed
Atomics.waitAsync()
Atomics.waitAsync() ช่วยให้สามารถรอการเปลี่ยนแปลงของหน่วยความจำที่ใช้ร่วมกันได้แบบอะซิงโครนัส
หนังสือฟรีเกี่ยวกับ ECMAScript 2024
ยังไม่มีความคิดเห็น