Menu
CoddyTech
Lộ trình học

Lộ trình lập trình viên JavaScript

Những gì cần học, theo đúng thứ tự, để làm lập trình viên JavaScript: ngôn ngữ JavaScript và TypeScript, dòng lệnh, Git và SQL, rồi cấu trúc dữ liệu và thuật toán mà phỏng vấn kiểm tra, và cuối cùng là code mà cả nhóm bảo trì được. Cùng một nền tảng này phục vụ cả frontend, backend và full-stack. Miễn phí, thực hành ngay trên trình duyệt.

469,217+ người học code đã đăng ký các khóa học này

651 bài học662 thử thách2,784 câu hỏi trắc nghiệm

Lộ trình lập trình viên JavaScript, từng bước một

17 khóa học7 phần651 bài học662 thử thách2,784 câu hỏi trắc nghiệm

Mỗi bước gồm các khóa học có sẵn trên Coddy, và mọi nút Bắt đầu đều mở chúng bằng JavaScript. Học theo thứ tự, hoặc bắt đầu từ bước bạn còn thiếu; tiến độ được lưu riêng cho từng khóa học.

  1. 1
    Bắt đầu bước nàyBắt đầuBốn phần. Fundamentals dạy biến, so sánh chặt và lỏng, ép kiểu, hàm và arrow function, và mảng; Logic & Flow dạy chuỗi, JSON và đối tượng, toán tử spread, set, và các phương thức mảng map, filter, reduce và sort; Introduction To TypeScript dạy kiểu dữ liệu cốt lõi, tuple, union, interface, enum, generic và type guard; Object Oriented Programming dạy this, module, lớp, trường private, kế thừa và composition. Hãy học thật sâu: framework nào bạn gặp sau này cũng là JavaScript ở bên dưới, và những quy tắc lỏng lẻo của nó, == bên cạnh === và chuyển kiểu ngầm, chỉ là cái bẫy cho đến khi bạn hiểu chúng.Bắt đầuTrang riêng
  2. 2
    Bắt đầu bước nàyBắt đầuĐường dẫn và tệp, ký tự đại diện, grep, pipe và chuyển hướng, quyền truy cập, biến môi trường và shell script. Công cụ JavaScript sống trong terminal: npm install, npx, dev server, build và test runner đều là lệnh, các script trong package.json là lệnh shell, và các thông tin bí mật đến với ứng dụng Node.js dưới dạng biến môi trường qua process.env.Bắt đầuTrang riêng
  3. 3
    Bắt đầu bước nàyBắt đầuStaging, commit, .gitignore, nhánh, merge và xung đột, hoàn tác sai lầm và remote. Trong một dự án JavaScript, node_modules/ được bỏ qua từ commit đầu tiên còn package-lock.json thì được commit, và một lockfile thay đổi liên tục là nơi các nhánh song song hay xung đột. Các nền tảng như Vercel và Netlify triển khai sau mỗi lần push, nên ở nhiều nhóm web, merge vào main chính là phát hành.Bắt đầuTrang riêng
  4. 4
    Bắt đầu bước nàyBắt đầuLọc, sắp xếp, join, nhóm, hàm tổng hợp, truy vấn con, mệnh đề WITH và window function, trên các bảng thật. JavaScript full-stack nghĩa là có một cơ sở dữ liệu phía sau API, thường là PostgreSQL hoặc MySQL, truy cập qua ORM hoặc query builder như Prisma; đọc SQL mà nó gửi đi là cách tìm ra vì sao một endpoint chạy chậm.Bắt đầuTrang riêng
  5. 5
    Bắt đầu bước nàyBắt đầuStack, queue, danh sách liên kết, cây nhị phân và bảng băm, mỗi cấu trúc đều được xây từ đầu bằng JavaScript rồi đem ra giải bài tập. Đây là những hình dạng mà ứng dụng JavaScript vốn đang chạy trên đó: lịch sử hoàn tác là một stack, event loop xử lý qua một queue, còn menu lồng nhau hay tài liệu JSON là một cây.Bắt đầu
  6. 6
    Bắt đầu bước nàyBắt đầuThử thách đệ quy, rồi bubble, selection, insertion, merge và quick sort bằng JavaScript, mỗi thuật toán sắp xếp đi kèm công cụ trực quan hóa thuật toán của Coddy. Đệ quy là chuyện hằng ngày trong JavaScript, duyệt một đối tượng lồng nhau hay một cây component, và nó có giới hạn: đi quá sâu thì V8, engine trong Chrome và Node.js, ném ra RangeError: Maximum call stack size exceeded. Bước này dạy bạn nhận ra điều đó từ trước.Bắt đầu
  7. 7
    Bắt đầu bước nàyBắt đầuMột dự án hướng đối tượng xây từ đầu đến cuối và một kho bài tập lập trình, đều bằng JavaScript. Prettier lo định dạng và ESLint báo một số lỗi; cách đặt tên, độ dài hàm và trách nhiệm nằm ở đâu là phần của bạn, và đó là những gì người review sẽ góp ý.Bắt đầu
Bạn nhận được gì
Mọi thứ bạn sẽ dùng để học lập trình

Học qua thực hành

Viết code thật, truy vấn cơ sở dữ liệu, xây dựng trang web và làm chủ prompt AI. Các bài học tương tác bao quát mọi kỹ năng mà lập trình viên hiện đại cần.

playground.js
Trình chỉnh sửa code
1const greeting = "Hello, Coddy!"
2function sayHi(name) {
3    return greeting + " " + name
4}
5
bottombar Collapse icon
Test #1test Case Success icon
Test #2test Case Success icon
Test #3test Case Failure icon
Đầu vào
"Alex"
Đầu ra
"Hello, Coddy! Alex"

Xây dựng streak

Học đều đặn và nhìn tiến độ của bạn lớn dần! Theo dõi thói quen code mỗi ngày, bảo vệ streak bằng ngày đóng băng và nhận phần thưởng khi học mỗi ngày.

12 ngày streak

Quay lại ngày mai để giữ streak!

fire Filled icon
left icon

January 2026

right icon

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

21

22

23

24

25

26

27

28

29

30

product Double Or Nothing icon

Gấp đôi hoặc mất hết

Ngày 5/7

fire Freeze icon

Đóng băng streak

2 left

Code ở mọi nơi

Mang hành trình lập trình theo bên mình! Không cài đặt, không tải về: chỉ cần mở ra và bắt đầu code. Có trên iOS, Android và Web với đánh giá 4,9 sao.

Python
7Streak
250Điểm
5Năng lượng
Biến
journey Hex Done Base iconjourney Hex Done Shadow iconjourney Hex Done Top iconjourney Lesson Done icon
journey Path Right Done icon
journey Hex Done Base iconjourney Hex Done Shadow iconjourney Hex Done Top iconjourney Lesson Done icon
journey Path Left Done icon
journey Hex Active Base iconjourney Hex Active Shadow iconjourney Hex Active Top iconjourney Lesson Theory Challenge icon
Tiếp tục
journey Path Right icon
journey Hex Locked Base iconjourney Hex Locked Shadow iconjourney Hex Locked Top iconjourney Lesson Theory Challenge icon
journey Path Left icon
journey Hex Locked Base iconjourney Hex Locked Shadow iconjourney Hex Locked Top iconjourney Lesson All icon
Hành trình
Mục tiêu
Bảng xếp hạng
Hồ sơ
4.9
Ngôi saoNgôi saoNgôi saoNgôi saoNgôi sao
Đánh giá

Bạn không đơn độc

Thi đấu trên bảng xếp hạng toàn cầu, mời bạn bè để nhận phần thưởng và cùng nhau ăn mừng thành công. Học code cùng bạn bè vui hơn nhiều!

Giải đấu Challenger
Giải đấu ChallengerTop 7 được thăng hạng
leaderboard First icon1
avatar 1 icon
fire Filled icon
Alex7+ Days
2840
leaderboard Second icon2
avatar 2 icon
fire Filled icon
Jordan7+ Days
2650
leaderboard Third icon3
avatar 3 icon
fire Filled icon
Sam7+ Days
2420
4
avatar 4 icon
Casey
2180
5
avatar placeholder icon
fire Filled icon
Morgan7+ Days
1950
leaderboard Arrow Up iconVùng thăng hạngleaderboard Arrow Up icon

Mọi cách để học

Đọc, nghe, tự kiểm tra, hỏi AI hoặc tra cứu bất cứ điều gì bạn đã học. Mỗi bài học phù hợp với trình độ của bạn.

Giới thiệu về biến
Âm thanh

Biến là một vùng chứa có tên, lưu một giá trị mà bạn có thể dùng lại sau trong chương trình.

Trong Python, bạn tạo biến bằng cách viết tên, dấu bằng, rồi giá trị muốn lưu.

Giá trị có thể thay đổi theo thời gian. Gán lại tên đó chỉ đơn giản là trỏ nó tới một giá trị mới.

1xSarah

Nhận chứng nhận

Nhận chứng nhận cho mỗi khóa học bạn hoàn thành. Thêm vào hồ sơ LinkedIn và CV để cho nhà tuyển dụng thấy kỹ năng lập trình của bạn.

CoddyGiấy chứng nhận hoàn thành
Chứng nhận rằngNguyễn Văn Anđã hoàn thành xuất sắc
python iconPython cơ bản
Đã xác minh
NgàyTh1 2026
LinkedInThêm vào LinkedIn

Vì sao nên theo lộ trình JavaScript này trên Coddy

  • Một ngôn ngữ cho cả thế giới web. JavaScript chạy trong mọi trình duyệt, và với Node.js nó còn chạy máy chủ, công cụ build và script, nên công việc frontend, backend và full-stack đều bắt đầu từ nền tảng mà lộ trình này xây dựng trước khi rẽ hướng.
  • TypeScript nằm ngay trong bước đầu tiên. Khóa học JavaScript có hẳn một phần TypeScript, từ kiểu dữ liệu cốt lõi và union đến interface, enum và generic, nên JavaScript có kiểu mà nhiều nhóm chuyên nghiệp đang viết là một phần của ngôn ngữ bạn học, không phải điều bất ngờ ở công việc đầu tiên.
  • Luyện phỏng vấn bằng JavaScript. Cấu trúc dữ liệu, các thử thách đệ quy và năm thuật toán sắp xếp đều được dạy bằng JavaScript, nên bạn luyện phỏng vấn bằng đúng ngôn ngữ mình sẽ được yêu cầu dùng.
  • Có chấm điểm, có gợi ý, không cần cài đặt. Mỗi bài học khép lại bằng một thử thách JavaScript được chấm bằng test case, và Bugsy, trợ lý AI, chỉ ra chỗ sai mà không viết luôn lời giải. Phần lớn khóa học kết thúc bằng một chứng nhận miễn phí, và không cần cài Node.js hay trình soạn thảo: mọi thứ đều chạy trên trình duyệt.

Câu hỏi thường gặp về việc trở thành lập trình viên JavaScript

Mất bao lâu để trở thành lập trình viên JavaScript?

Từ sáu đến mười hai tháng, mỗi ngày khoảng một giờ, là khoảng thời gian hợp lý để đi từ con số 0 đến buổi phỏng vấn junior. Trên lộ trình này, khóa học JavaScript, kể cả phần TypeScript, mất tám đến mười tuần; dòng lệnh, Git và SQL tổng cộng khoảng một tháng; các bước cấu trúc dữ liệu và sắp xếp thêm hai tháng. Sau đó là chuyên môn, một framework như React hoặc backend Node.js, được xây thành một hai dự án để bạn đem ra giới thiệu.

JavaScript có phải ngôn ngữ đầu tiên tốt cho kỹ sư phần mềm không?

Có, kèm một lưu ý. JavaScript chạy ở khắp nơi, hiện kết quả ngay trên trình duyệt và dẫn thẳng đến công việc có thu nhập trên web. Lưu ý là JavaScript bỏ qua những lỗi mà ngôn ngữ khác từ chối: == chuyển kiểu trước khi so sánh, và một thuộc tính không tồn tại là undefined chứ không phải lỗi. Đó là lý do bước đầu tiên của lộ trình có TypeScript, và các bước cấu trúc dữ liệu bắt bạn tự xây từng cấu trúc.

Ngoài JavaScript, lập trình viên JavaScript cần biết những gì?

Dòng lệnh, Git và SQL, những thứ lộ trình này dạy, rồi đến nền tảng bạn viết code cho nó, phần lộ trình không dạy: HTML, CSS, DOM và một framework như React trên trình duyệt, hoặc Node.js, npm và HTTP trên máy chủ. Lộ trình Frontend của Coddy dạy phía trình duyệt, có cả React, và tiếp nối từ chỗ trang này dừng lại.

Nên học TypeScript hay JavaScript trước?

JavaScript trước, rồi TypeScript ngay sau đó. TypeScript là JavaScript có thêm kiểu, và lỗi của nó chỉ có nghĩa khi bạn hiểu phần JavaScript bên dưới làm gì. Khóa học JavaScript sắp xếp đúng như vậy: hai phần JavaScript thuần, rồi phần TypeScript, rồi lập trình hướng đối tượng.

Khóa học nào trên lộ trình này không dạy bằng JavaScript?

Chỉ một: clean code hiện mới được dạy bằng Python, nên khóa học này được liệt kê sau các bước thay vì ở bước bảy. Chủ đề của nó, cách đặt tên, độ dài hàm và cấu trúc, đọc như nhau ở mọi ngôn ngữ, và các linter như ESLint chỉ bắt được một phần nhỏ. Mọi bước khác, kể cả dự án hướng đối tượng và bài tập lập trình, đều bằng JavaScript.

Lộ trình JavaScript này có miễn phí không?

Có. Mọi khóa học trên lộ trình đều miễn phí: bài học, trình soạn thảo và terminal Linux trên trình duyệt, các thử thách chấm bằng test, gợi ý của Bugsy và chứng nhận. Pro bỏ giới hạn năng lượng hằng ngày và thêm trợ giúp AI không giới hạn, và lộ trình này không đòi hỏi gói đó.

Tôi có nhận được chứng nhận cho lộ trình Kỹ sư phần mềm không?

Có. Hoàn thành mọi bước và bạn nhận một chứng nhận miễn phí cho cả lộ trình Kỹ sư phần mềm. Chứng nhận liệt kê từng khóa học bạn đã hoàn thành trên đường đi và liên kết đến chứng nhận riêng của từng khóa, để ai cũng có thể kiểm tra mọi kỹ năng được nêu. Bạn có thể thêm nó vào hồ sơ LinkedIn. Đây là chứng nhận hoàn thành của Coddy, không phải văn bằng được kiểm định.

Các lộ trình học khác

Cùng các khóa học, sắp xếp cho một vai trò khác. Tiến độ được giữ lại: khóa học đã hoàn thành ở một lộ trình được tính ở mọi lộ trình có khóa học đó.

Tất cả lộ trình học
Hình minh họa các ngôn ngữ lập trình của Coddy

Bắt đầu lộ trình Kỹ sư phần mềm miễn phí

Bắt đầu học