ecmascript 6 - ใน TypeScript ความแตกต่างระหว่าง `lib.es6.d.ts` และ `lib.es2015.d.ts` คืออะไร?
จากความเข้าใจของฉัน ES6 และ ES2015 เป็นสิ่งเดียวกัน แต่ใน TypeScript มีการประกาศประเภท 2 แบบสำหรับสิ่งเหล่านี้: lib.es6.d.ts และ lib.es2015.d.ts แตกต่างกันอย่างไร? ฉันควรใช้แบบไหน?
คำตอบ #1
ES6 และ ES2015 เป็นคำพ้องความหมาย ทั้ง target และ lib ของ TypeScript ที่มีชื่อเหมือนกันคาดว่าจะทำงานในลักษณะเดียวกันใน TypeScript - และมันก็เป็นเช่นนั้น
lib.d.ts และ lib.es6.d.ts เป็นไฟล์ไลบรารีสะสม พวกมันถูกสร้างจากไลบรารีอื่น:
ไฟล์ภายในไดเรกทอรีนี้ถูกใช้เพื่อสร้าง lib.d.ts และ lib.es6.d.ts
พวกเขารวมถึงไลบรารีสเปคที่เกี่ยวข้องรวมถึง DOM
ความแตกต่างระหว่าง lib.es6.d.ts และ lib.es2015.d.ts คือ ตัวแรกจะถูกรวมโดยค่าเริ่มต้นเมื่อ target ถูกตั้งค่าเป็น ES6 เมื่อไม่มีการกำหนด lib ส่วนตัวหลังจะถูกใช้เมื่อ lib ถูกตั้งค่าเป็น ES6 กล่าวคือ --target ES6 มีค่าเท่ากับ --target ES6 --lib ES6,DOM,DOM.Iterable,Scripthost
ไลบรารี ES2015 มีความละเอียดสูง ดังนั้น ES6 หรือ ES2015 สามารถถูกแทนที่ด้วยชุดย่อยของฟีเจอร์เมื่อจำเป็น: ES2015.Core เป็นต้น