Nội dung khóa học

1. Giới thiệu và chuẩn bị

  1. Giới thiệu khóa học:
    • Khóa học dành cho ai
    • Format khóa
    • Tại sao lại học khóa này
    • Những topic trong khóa
    • Những Project thực tế
    • Nâng cao một số kỹ năng khác.
  2. Project files và câu hỏi.
  3. VS code setup.

2. Javasript căn bản

  1. File setup: Hướng dẫn setup file index.html, app.js, mở bằng extension
  2. Sử dụng console: Cách sử dụng các câu lệnh console và thực hiện trên devtool
  3. var, let, const: hoisting, scope
  4. Kiểu dữ liệu: các kiểu dữ liệu, typeof và tham trị, tham chiếu
  5. Toán tử
  6. Câu lệnh điều kiện: if else, switch case
  7. Vòng lặp
  8. Function: Các loại khai báo function
  9. Function nâng cao: HOF
  10. call, apply, bind
  11. Number và method
  12. String và method
  13. Array và method
  14. Object và method
  15. Date time
  16. Object window
  17. alert, confirm, prompt

3. DOM và sự kiện

  1. DOM là gì
  2. Select 1 element
  3. Select nhiều element
  4. Sơ lược về các phương thức hay dùng với DOM
  5. Tạo element
  6. Xóa và thay thế element
  7. Mouse Event
  8. Keyboard Event
  9. Local Storage và Cookie

4. DOM project

  1. Project mô phỏng tính năng Tab tương tự Bootstrap
  2. Project tính lãi suất vay ngân hàng
  3. Project game kéo búa bao
  4. Project Todo

5. Xử lý lỗi và Regex

  1. Try catch
  2. Custom Error
  3. Regex: Evaluation functions
  4. Regex: Metacharacter Symbols
  5. Regex: Character Sets & Quantifiers
  6. Regex: Shorthand character classes
  7. Project Validate Form

6. OOP Javascript

  1. Property flags and descriptors Object
  2. Property getters and setters Object
  3. Prototypal inheritance
  4. F.prototype
  5. Native prototypes
  6. Prototype methods, objects without proto
  7. Cú pháp class căn bản
  8. Class kế thừa
  9. Thuộc tính và phương thức static
  10. Thuộc tính private và protected
  11. Kiểm tra class với "instanceof"

7. OOP Project

  1. Project quản lý sinh viên với Prototype
  2. Project quản lý sinh viên với class
  1. Callback
  2. Promise
  3. Promise chaining
  4. Xử lý lỗi với Promise
  5. Một số pattern cần tránh
  6. Promise API
  7. Async Await
  1. Ajax là gì
  2. XMLHttpRequest
  3. Fetch

10. API Project

  1. Project tạo thư viện HTTP (3 phiên bản – Callback / Promise / Async & Await)
  2. Github Search

11. Một số tính năng mới khác của ES5, ES6

  1. Iterators & Generators
  2. Profile Scroller - Iterator Mini Project
  3. Symbols
  4. Destructuring, Rest Parameters, and Spread Syntax
  5. ES6 Maps
  6. ES6 Sets

12. Javascript pattern

  1. Pattern là gì
  2. Module và Revealing Module Pattern
  3. Single pattern
  4. Factory pattern
  5. Observer Pattern
  6. Mediator Pattern
  7. State Pattern - Small Project

13. Project sử dụng Javascript pattern

  1. Project Money lover

14. Blog management project - Webpack, babel