0Pricing
TypeScript Academy · บทเรียน

การคอมไพล์ TypeScript เป็น JavaScript

ทำความเข้าใจคอมไพเลอร์ TypeScript และผลลัพธ์ที่ได้

การคอมไพล์ TypeScript เป็น JavaScript เป็นบทเรียน TypeScript Academy ฟรีบน CoddyKit นี่คือบทเรียนที่ 3 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน TypeScript Academy และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส TypeScript Academy มีบทเรียนทั้งหมด 4 บทเรียน

ยินดีต้อนรับ

TypeScript ไม่สามารถทำงานโดยตรงใน Node.js หรือเบราว์เซอร์ได้ ต้องคอมไพล์เป็น JavaScript ก่อน ในบทเรียนนี้ คุณจะได้เรียนรู้ว่าคอมไพเลอร์ TypeScript ทำงานอย่างไร

การติดตั้งคอมไพเลอร์ TypeScript

ติดตั้ง TypeScript เป็นส่วนพึ่งพาสำหรับการพัฒนาในโครงการของคุณ หลังติดตั้งแล้ว คำสั่ง `tsc` จะพร้อมใช้งานในสคริปต์ภายในโครงการ
npm install --save-dev typescript
npx tsc --version

การคอมไพล์ครั้งแรกด้วย tsc

เรียกใช้ `tsc hello.ts` เพื่อคอมไพล์ไฟล์เดียว คำสั่งนี้จะสร้าง `hello.js` ในไดเรกทอรีเดียวกัน โดยลบชนิดข้อมูลทั้งหมดออก
// hello.ts
function greet(name: string): string {
  return 'Hello, ' + name;
}
console.log(greet('World'));

// Compile: npx tsc hello.ts
// Output: hello.js (no types)

tsconfig.json: การกำหนดค่าโครงการ

สำหรับโครงการจริง คุณต้องมี `tsconfig.json` เรียกใช้ `tsc --init` เพื่อสร้างไฟล์นี้ โดยไฟล์นี้ควบคุมเป้าหมาย รูปแบบโมดูล ความเข้มงวด ไดเรกทอรีผลลัพธ์ และอื่น ๆ
npx tsc --init
// Creates tsconfig.json with defaults and comments

ตัวเลือกสำคัญของการกำหนดค่าโครงการ

ฟิลด์ที่สำคัญที่สุดของการกำหนดค่าโครงการ ได้แก่ เป้าหมาย (เวอร์ชัน ES ของผลลัพธ์) ระบบโมดูล outDir (โฟลเดอร์ผลลัพธ์) และโหมดเข้มงวด (เปิดใช้การตรวจสอบแบบเข้มงวดทั้งหมด)
{
  "compilerOptions": {
    "target": "ES2020",
    "module": "commonjs",
    "outDir": "./dist",
    "strict": true
  }
}

โหมดเฝ้าดูด้วย tsc --watch

เรียกใช้ `tsc --watch` เพื่อคอมไพล์ใหม่โดยอัตโนมัติทุกครั้งที่คุณบันทึกไฟล์ TypeScript วิธีนี้ช่วยเร่งวงจรการพัฒนา
npx tsc --watch
// Watches for changes and recompiles on save

noEmit: ตรวจสอบชนิดข้อมูลโดยไม่สร้างไฟล์

ตัวเลือก `noEmit` เรียกใช้ตัวตรวจสอบชนิดข้อมูลโดยไม่เขียนไฟล์ผลลัพธ์ใด ๆ เหมาะสำหรับสายงาน CI ที่ใช้เครื่องมือรวมโค้ดอย่าง Vite หรือ esbuild ในการคอมไพล์จริง
// tsconfig.json
{ "compilerOptions": { "noEmit": true } }

// Then run:
npx tsc --noEmit

ทางเลือกที่เร็วกว่า: ts-node และ tsx

สำหรับการพัฒนา คุณสามารถเรียกใช้ TypeScript ได้โดยตรงโดยไม่ต้องมีขั้นตอนคอมไพล์แยกต่างหาก ด้วย `ts-node` หรือเครื่องมือ `tsx` ที่เร็วกว่า
# Run TS directly with ts-node
npx ts-node src/index.ts

# Or faster with tsx
npx tsx src/index.ts

แผนที่ต้นฉบับสำหรับการแก้ไขข้อบกพร่อง

เปิดใช้ `sourceMap: true` เพื่อให้เครื่องมือสำหรับนักพัฒนาในเบราว์เซอร์และตัวแก้ไขข้อบกพร่องของ Node.js จับคู่บรรทัด JS ที่คอมไพล์แล้วกลับไปยังซอร์ส TypeScript เดิมของคุณ
{ "compilerOptions": { "sourceMap": true } }

ไฟล์ประกาศ (.d.ts)

เมื่อใช้ `declaration: true` คอมไพเลอร์จะสร้างไฟล์ `.d.ts` ออกมาด้วย ไฟล์เหล่านี้ช่วยให้โครงการ TypeScript อื่นนำไลบรารีของคุณไปใช้พร้อมข้อมูลชนิดข้อมูลแบบครบถ้วน
{ "compilerOptions": { "declaration": true } }
// Outputs: dist/index.js AND dist/index.d.ts

ข้อผิดพลาดของคอมไพเลอร์จะหยุดผลลัพธ์โดยค่าเริ่มต้น

โดยค่าเริ่มต้น หาก TypeScript มีข้อผิดพลาดด้านชนิดข้อมูล `tsc` ยังคงสร้าง JavaScript ออกมา แต่จบการทำงานด้วยรหัสที่ไม่ใช่ศูนย์ ใช้ `noEmitOnError: true` เพื่อหยุดการสร้างผลลัพธ์เมื่อมีข้อผิดพลาด
{ "compilerOptions": { "noEmitOnError": true } }

ตรวจสอบอย่างรวดเร็ว

การเรียกใช้ `tsc --noEmit` ทำอะไร

สรุปทบทวน

คอมไพเลอร์ TypeScript แปลงไฟล์ .ts เป็น JavaScript กำหนดค่าด้วย tsconfig.json ใช้ --watch ระหว่างการพัฒนา ใช้ --noEmit เพื่อตรวจสอบชนิดข้อมูลเท่านั้น และใช้ ts-node/tsx เพื่อเรียกใช้ TypeScript โดยตรง

คำถามที่พบบ่อย

บทเรียน “การคอมไพล์ TypeScript เป็น JavaScript” ฟรีหรือไม่

ใช่ — ข้อความเต็มของ “การคอมไพล์ TypeScript เป็น JavaScript” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส TypeScript Academy ให้อัปเกรดเป็น CoddyKit PRO คอร์ส TypeScript Academy มีบทเรียนทั้งหมด 4 บทเรียน

คุณจะเรียนรู้อะไรในบทเรียน “การคอมไพล์ TypeScript เป็น JavaScript”

ทำความเข้าใจคอมไพเลอร์ TypeScript และผลลัพธ์ที่ได้ คุณปฏิบัติ TypeScript Academy ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน

คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน TypeScript Academy หรือไม่

ไม่จำเป็นต้องมีประสบการณ์มาก่อน TypeScript Academy บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 3 จากทั้งหมด 4 บทเรียน

บทเรียน “การคอมไพล์ TypeScript เป็น JavaScript” ใช้เวลานานแค่ไหน

บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย

ฉันเขียนและรันโค้ดในบทเรียน TypeScript Academy นี้ได้ไหม

ได้ บทเรียน TypeScript Academy ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ

บทเรียนทั้งหมดในหลักสูตรนี้

  1. จุดที่มักพบปัญหาใน JavaScript: บั๊กขณะรันไทม์
  2. สิ่งที่ TypeScript เพิ่มให้ JavaScript
  3. การคอมไพล์ TypeScript เป็น JavaScript
  4. เมื่อใดควรใช้ TypeScript ในโปรเจกต์
← กลับไปที่ TypeScript Academy