Kuest AI

Học mọi thứ, miễn phí

Bắt đầu miễn phí

Học TypeScript nhanh hơn 10 lần với AI

Dán lỗi kiểu dữ liệu đang làm bạn vướng lại. Kuest giúp bạn đọc lỗi, hỏi bạn muốn kiểu dữ liệu đó là gì và giải thích cách sửa.

817,000+học sinh đã học cùng Kuest

chủ đề
9
Biên dịch sang
JavaScript
Nên học trước
JavaScript
Dùng cùng
React, Node.js, Angular

Xem cách Kuest hướng dẫn

Kuest hỏi trước khi giải thích, để bạn tự suy nghĩ và nhớ lâu hơn.

Bạn: const user = users.find(u => u.id === id); console.log(user.name); báo 'user' is possibly 'undefined'. Tại sao?
Kuest: Hãy nghĩ xem find làm gì khi không có gì khớp. Khi đó nó trả về gì?
Bạn: Undefined, mình nghĩ vậy. Nếu không có user nào có id đó thì không có gì để trả về.
Kuest: Đúng rồi, vậy kiểu trả về của nó là User | undefined. Nếu bạn đọc .name trên undefined khi chạy thì điều gì xảy ra?
Bạn: Nó sẽ lỗi với TypeError. Vậy TypeScript đang cảnh báo mình trước khi điều đó xảy ra.
Kuest: Chính xác. Bạn có thể cho TypeScript biết rằng mình đã xử lý trường hợp đó bằng cách nào?
Bạn: Kiểm tra trước: if (!user) return; rồi user.name sẽ an toàn. Hoặc dùng user?.name nếu việc ghi undefined ra log là ổn.

find trả về T | undefined, vì vậy hãy thu hẹp kiểu bằng kiểm tra hoặc ?. trước khi dùng kết quả.

Học sinh tập trung học cùng Kuest

học sinh
817,000+
quốc gia
100+
  • Từ điểm C lên A môn hóa

    “Mình đã ngừng chép đáp án và bắt đầu thật sự hiểu bài. Điểm hóa của mình từ C lên A chỉ trong một học kỳ.”

    Học sinh lớp 11, Texas
  • 3 giờ → 40 phút

    “Ghi chú của mình biến thành bài kiểm tra chỉ trong vài giây. Việc từng mất cả đêm giờ chỉ mất bằng một tập phim.”

    Học sinh lớp 10, California
  • Cuối cùng cũng sẵn sàng cho SAT

    “Kế hoạch cho mình biết chính xác cần làm gì mỗi ngày. Lần đầu tiên, mình bước vào phòng thi với tâm trạng bình tĩnh.”

    Học sinh lớp 12, New York
  • Không bao giờ cho mình bỏ qua bước nào

    “Lúc đầu hơi phiền, nhưng đến ngày thi thì đúng là cứu cánh. Mình có thể làm mọi bài mà không cần đến nó.”

    Học sinh lớp 9, Ohio
  • Tốt hơn gia sư của mình

    “Có mặt cả lúc nửa đêm, kiên nhẫn, lại rẻ hơn một buổi học với gia sư cũ của mình.”

    Sinh viên năm nhất, Florida
  • Chuỗi của mình đã 94 ngày

    “Các nhiệm vụ chỉ mất mười phút. Mình làm trên xe buýt. Không hiểu sao giờ mình lại là người giải thích Sinh học cho bạn bè.”

    Học sinh lớp 11, Illinois
  • Cuối cùng mình cũng thông tiếng Tây Ban Nha

    “Nói thành tiếng với gia sư giúp mình sửa phát âm nhanh hơn cả một năm học trên lớp.”

    Học sinh lớp 10, Arizona
  • Tìm ra lỗ hổng chỉ trong một đêm

    “Bài kiểm tra lỗ hổng cho mình thấy là mình chưa từng hiểu mol. Sửa được trong 15 phút.”

    Học sinh lớp 11, Georgia
  • Phụ huynh đây: không còn khủng hoảng lúc 9 giờ tối

    “Con trai tôi nhận được hỗ trợ thực sự mà tôi không phải giả vờ nhớ Giải tích, và tôi có thể xem tiến bộ của con mỗi tuần.”

    Phụ huynh, Washington

Phương pháp

Cách học TypeScript với Kuest

TypeScript sẽ dễ hiểu hơn khi nền tảng JavaScript của bạn vững, vì vậy hãy học các kiểu dữ liệu dựa trên đoạn mã bạn đã hiểu. Đọc chậm lỗi từ dòng đầu tiên, tự hỏi bạn mong đợi kiểu nào so với kiểu TypeScript suy luận, rồi luyện thu hẹp kiểu và generics qua ví dụ nhỏ đến khi thấy tự nhiên.

  1. Dựa trên kiến thức JavaScriptTrò chuyện với gia sư

    Hỏi cách khai báo kiểu cho một mẫu JavaScript bạn biết, như đối tượng, callback hoặc lệnh gọi fetch.

  2. Giải mã lỗi kiểuChụp ảnh

    Dán lỗi và đoạn mã xung quanh, hoặc chụp trình soạn thảo của bạn, Kuest sẽ giúp bạn hiểu TypeScript đang nói gì.

  3. Xem các kiểu liên hệ với nhauBảng hướng dẫn

    Dùng bảng học tập để vẽ sơ đồ union, thu hẹp kiểu và tham số kiểu generic đi qua một hàm.

  4. Dự đoán kiểuCâu đố

    Trả lời các câu đố hỏi biến có kiểu gì sau một kiểm tra, hoặc liệu một dòng có biên dịch được không.

  5. Luôn sẵn cú pháp cần dùngThẻ ghi nhớ

    Ôn utility types, cú pháp generics và tùy chọn tsconfig dưới dạng thẻ ghi nhớ cách quãng.

  6. Tập trung vào điểm còn yếuTìm lỗ hổng kiến thức

    Để Kuest tìm những chủ đề bạn thường làm sai, như generics hoặc thu hẹp kiểu, rồi luyện tập chúng.

Bạn sẽ học gì

Chạm vào một chủ đề để học ngay.

  1. 01Vì sao cần kiểu dữ liệu và trình biên dịchGiải thích tsc kiểm tra gì và cách TypeScript biên dịch sang JavaScript
  2. 02Các kiểu cơ bản và chú thích kiểuChú thích biến, tham số và giá trị trả về, rồi để suy luận kiểu lo phần còn lại
  3. 03Đối tượng, type alias và interfaceMô tả cấu trúc đối tượng bằng type và interface, rồi chọn giữa chúng
  4. 04Union types và thu hẹp kiểuKết hợp kiểu với | và thu hẹp chúng bằng typeof, in và kiểm tra bằng
  5. 05null, undefined và chế độ strictXử lý các giá trị có thể là undefined bằng kiểm tra, ?. và ?? thay vì !
  6. 06Hàm và overloadKhai báo kiểu cho callback, tham số tùy chọn và hàm trả về các kiểu khác nhau
  7. 07GenericsViết hàm và kiểu có thể tái sử dụng với <T> và các ràng buộc như extends
  8. 08Utility typesBiến đổi kiểu bằng Partial, Pick, Omit và Record
  9. 09Khai báo kiểu cho dự án thực tếKhai báo kiểu cho React props, phản hồi API và module, đồng thời cấu hình tsconfig.json

Thử hỏi

Chạm vào một câu hỏi và Kuest sẽ bắt đầu hướng dẫn từng bước.

Giúp bạn chuẩn bị cho

  • Các khóa học phát triển web
  • Bootcamp và làm dự án

Một tháng Kuest có giá thấp hơn một giờ học với gia sư

Kiên nhẫn như nhau, mọi lúc, mọi môn học. Hoặc bạn có thể dùng gói miễn phí mãi mãi.

Gia sư riêng

$40–80cho một giờ

  • Cần đặt lịch trước nhiều ngày
  • Mỗi buổi chỉ học một môn
  • Dừng khi hết giờ

Kuest Plus

$10một tháng, thanh toán hằng năm

  • Mọi môn học và kỳ thi trên trang này
  • Bất kỳ lúc nào, lâu tùy bạn cần
  • Câu đố, thẻ ghi nhớ, podcast và đề thi thử

Giải đáp thắc mắc

Buổi học tiếp theo của bạn bắt đầu tại đây

Gói miễn phí mãi mãi. Không cần thẻ.

Bắt đầu miễn phí