Mô tả

Xin chào mọi người, mình là Hậu - Founder kênh youtube Easy Frontend (hiện đã hơn 12000 subscribers)

Sau thành công của khoá học ReactJS cho người mới bắt đầu, mình nhận được rất nhiều phản hồi tích cực từ mọi người, nó là nguồn động lực rất lớn để mình làm tiếp những khoá học tiếp theo.

Với mong muốn được hỗ trợ mọi người từ những bước đầu tiên vào ngành lập trình, mình đã cho ra mắt khoá học Javascript cho người mới bắt đầu này. Vì nội dung nhắm tới những bạn chưa biết gì cũng có thể học được, nên nội dung được chuẩn bị rất kĩ lưỡng về các thuật ngữ, cũng như từng chi tiết lập trình nhỏ, để mọi người có thể tiếp thu một cách dễ dàng, nhanh chóng.

Ngoài việc tập trung vào kiến thức của ngôn ngữ Javascript, mình cũng có đan xen vào phần giải thuật cơ bản, giúp các bạn vừa có được kiến thức về Javascript vừa có kiến thức về lập trình cơ bản, để có thể tự tin hơn ở những chặng đường tiếp theo.

Nếu các bạn chưa học hoặc đang học mà chưa nắm vững được javascript thì mình tin chắc khoá học này sẽ giúp bạn đạt được điều đó.

Hẹn gặp các bạn trong khoá học nhé!

Bạn sẽ học được gì

Yêu cầu

Nội dung khoá học

31 sections

Giới thiệu khoá học

7 lectures
Giới thiệu nội dung khoá học
11:05
Những con số thống kê thú vị về javascript
07:04
Tips hay để việc học trở nên hiệu quả hơn
04:43
Đặt mục tiêu cho khoá học
1 câu hỏi
Tải slides của khoá học Javascript
00:12
Tham gia nhóm chat Discord
00:32
LƯU Ý QUAN TRỌNG
00:59

Cài đặt môi trường làm việc

5 lectures
Cài đặt code editor - VSCode
04:25
Cài đặt Node + Git
14:50
Cài đặt VSCode + Extensions
07:16
Cài đặt FiraCode font
04:48
Xem bạn hiểu về việc setup này tới đâu nhé
5 câu hỏi

Tổng quan về thế giới lập trình

5 lectures
Kiến trúc của một hệ thống phần mềm
07:07
Các vai trò trong dự án phần mềm
09:57
Thuật ngữ lập trình bạn nên biết
16:13
Cách học một ngôn ngữ lập trình hiệu quả
13:03
Câu hỏi về thế giới lập trình
5 câu hỏi

Làm quen với Javascript

12 lectures
Lịch sử phát triển Javascript
11:17
JS có thể làm được gì?
03:31
Làm sao để thực thi code JS?
09:31
"use strict" mode
04:42
Làm quen với syntax của Javascript
08:33
Cách viết comments hiệu quả
09:42
Reserved keywords trong Javascript
03:28
Variables và cách đặt tên
12:03
Tổng quan về operators
12:40
Các kiểu dữ liệu trong Javascript
08:10
Function và những điều cần biết
11:08
Câu hỏi làm quen với Javascript
10 câu hỏi

Làm việc với boolean

13 lectures
Tổng quan về boolean
07:31
Type conversion và Type coersion
10:57
Truthy và Falsy
08:55
Logical operators
15:12
Hack não với phép so sánh
22:59
Làm quen với if...else
09:54
Làm quen với switch...case
08:28
Bài tập if else 1
14:33
Bài tập if else 2
17:19
Bài tập switch case 1
07:58
Bài tập switch case 2
10:29
Viết hàm lấy giá vé tương ứng theo số tuổi
1 câu hỏi
Say hello bằng nhiều ngôn ngữ
1 câu hỏi

Làm việc với number

15 lectures
Tổng quan về number
14:49
Built-in object: Number
17:30
Built-in object: Math
05:51
Imprecise calculations
08:12
Rounding - Làm tròn số
04:36
Random number [0, n]
08:35
Random number [a, b]
06:43
Bài tập về toán học
06:41
Bài tập về kiểm tra loại number
10:53
Bài tập tìm max
14:03
Bài tập rút trích chữ số từ số
09:22
Bài toán gọi taxi
1 câu hỏi
Tìm chữ số lớn nhất của một số nguyên dương
1 câu hỏi
So sánh 2 số nguyên
1 câu hỏi
Kiểm tra số có tối đa 3 chữ số có phải là số đối xứng hay không?
1 câu hỏi

Làm việc với string

17 lectures
Tổng quan về string
09:26
String - A primitive wrapper object
10:56
Thao tác cơ bản với string
08:16
Lấy substring như thế nào
08:00
Tìm kiếm và thay thế
05:07
Split and Join
05:10
Bài tập - capitalize
06:12
Bài tập - includes
05:18
Bài tập - parameterize
07:24
Bài tập - truncate
07:09
Tìm và xoá các nguyên âm trong câu văn
1 câu hỏi
Format số giây luôn hiển thị 2 chữ số
1 câu hỏi
Convert số giây sang chuỗi hh:mm:ss
1 câu hỏi
Kiểm tra URL có sử dụng phương thức bảo mật
1 câu hỏi
Rút trích domain từ địa chỉ email
1 câu hỏi
Truy tìm mật mã
1 câu hỏi
Trả về full name khi biết first và last name
1 câu hỏi

Làm việc với object

7 lectures
Tổng quan về object
10:16
Tham trị và tham chiếu
13:16
Thao tác cơ bản với object
11:04
Duyệt keys của object
03:26
Bài tập làm quen object
10:23
Viết hàm clone object nhưng không dùng spread operator
1 câu hỏi
Kiểm tra 2 objects có bằng nhau không?
1 câu hỏi

Làm việc với array

25 lectures
Tổng quan về array
10:59
Giới thiệu Array object
11:56
Array destructuring
06:42
Clone array
08:42
Loop - duyệt mảng
17:00
Thêm xoá phần tử trong mảng
12:28
Kiểm tra tồn tại của phần tử
16:15
find() - tìm kiếm phần tử
11:05
find() - cài đặt bằng for...i
16:39
map() - biến đổi mảng
15:11
filter() - lọc mảng
09:21
sort() - sắp xếp mảng
14:54
reduce() - duyệt mảng và tính toán
11:32
reduce() - cài đặt bằng for...i
20:23
Bài tập - Print numbers
07:22
Bài tập - Find max
08:29
Bài tập - Từ dài nhất
06:43
Liệt kê các số trong khoảng [a, b]
1 câu hỏi
Kiểm tra số nguyên tố
1 câu hỏi
Liệt kê ước số của số nguyên dương n
1 câu hỏi
Kiểm tra số hoàn hảo
1 câu hỏi
Biến đổi mảng với f(i) = f(i-1) + f(i + 1)
1 câu hỏi
Kiểm tra mảng có chứa số nguyên tố không?
1 câu hỏi
Kiểm tra mảng có phải tất cả đều là số hoàn hảo không?
1 câu hỏi
Tính trung bình cộng của các số chẳn trong mảng
1 câu hỏi

Học viết Unit Test đơn giản

8 lectures
Tổng quan về unit test
09:46
Setup Jest framework
13:53
Cấu trúc của file unit test
10:43
Các matcher thông dụng
09:14
Viết unit test cho classifyStudent
17:13
Viết unit test cho hàm checkIfAllEven
11:47
Thực hành viết unit test cho các hàm đã viết trong khoá học
00:35
Câu hỏi về unit tests
8 câu hỏi

Bài tập lập trình cơ bản

27 lectures
Hướng dẫn làm bài tập
16:54
Bài tập mẫu - Tính S(n)
11:05
Lưu ý trước khi xem video giải bài tập
00:18
Bài tập - số tăng dần (number-01)
25:08
Bài tập - thống kê từ trong câu (string-02)
12:09
Bài tập - Kiểm tra có học sinh nữ tên Alice không? (array-check-07)
16:53
Bài tập - Tìm kiếm student theo id cho trước (array-find-09)
09:03
Bài tập - Tìm tất cả các số có chữ số đầu tiên là số lẻ (array-filter-06)
13:10
Bài tập - Đếm số lượng unique numbers (array-count-04)
11:24
Bài tập - Tính tổng tiền giỏ hàng (array-sum-04)
07:26
Bài tập - Tìm tất cả mảng con có số dương chẳn liên tiếp (array-subarr-04)
13:36
Bài tập - Tìm số xuất hiện nhiều nhất (logic-04)
10:02
Bài toán đổi tiền ATM đơn giản
1 câu hỏi
Rút trích ngôn ngữ từ URL
1 câu hỏi
Kiểm tra độ mạnh của mật khẩu
1 câu hỏi
Remove duplicated letters
1 câu hỏi
Đếm số từ có trong câu
1 câu hỏi
Merge array and remove duplicated numbers
1 câu hỏi
Tìm số xuất hiện nhiều nhất trong mảng
1 câu hỏi
Đếm số lượng học sinh có giới tính là nam
1 câu hỏi
Tính tổng tiền giỏ hàng
1 câu hỏi
Tìm các sản phẩm có giá tiền lớn hơn 100.000đ
1 câu hỏi
Chia nhỏ mảng thành nhiều mảng con
1 câu hỏi
Tìm 2 số trong mảng có tổng bằng một số cho trước
1 câu hỏi
Tìm số bị trùng đầu tiên trong mảng
1 câu hỏi
Kiểm tra mảng có phải là dạng "mountain" array không?
1 câu hỏi
Luyện skills thôi nào!!!
00:14

Cấu trúc dữ liệu cơ bản

28 lectures
Tổng quan về data structure
08:04
Tổng quan về Linked List
18:49
Cài đặt Linked List - Tạo và in list
14:04
Cài đặt Linked List - Phương thức phổ biến
16:03
Viết hàm insertTail()
1 câu hỏi
Viết hàm insertBeforePosition(data, position)
1 câu hỏi
Linked List - Viết hàm some()
1 câu hỏi
Linked List - Hàm every()
1 câu hỏi
Xác nhận đã làm bài tập Linked List
00:08
Cài đặt Linked List - Insert
17:49
Cài đặt Linked List - Remove
16:31
Cài đặt Linked List - Some vs Every
07:18
Stack vs Queue
09:34
Cài đặt Stack
09:19
Cài đặt Queue
09:15
JS built-in object: Map
20:07
JS built-in object: Set
14:39
Lấy danh sách các từ khác nhau trong câu
1 câu hỏi
Xây dựng category map từ category list
1 câu hỏi
Kiểm tra đóng mở ngoặc có đúng và đủ cặp không?
1 câu hỏi
Kiểm tra PIN hợp lệ
1 câu hỏi
Tổng quan về Binary Tree
13:50
Tất tần tật về recursion
21:04
BST - Insert
19:19
BST - Một số hàm hỗ trợ
15:15
BST - Breadth First Traversal (BFS)
07:26
BST - Depth First Traversal (DFS)
06:44
BST - Remove
15:14

Giải thuật cơ bản

9 lectures
Tổng quan về giải thuật
17:40
Thuật toán tìm kiếm - SEARCH
14:22
Thuật toán sắp xếp - Bubble Sort
15:24
Thuật toán sắp xếp - Quick Sort
23:30
Bổ sung điều kiện cho hàm partition
00:35
Sắp xếp ứng dụng trong thực tế
12:54
Tìm kiếm student theo tên sử dụng binary search
1 câu hỏi
Sắp xếp thứ tự giảm dần sử dụng bubble sort
1 câu hỏi
Sắp xếp giảm dần sử dụng quick sort
1 câu hỏi

ES6 và một số concepts trong Javascript

14 lectures
Strict mode
11:59
Scope
20:55
Hoisting
20:19
Temporal Dead Zone
00:36
IIFE - Immediately Invoked Function Expression
10:49
Closures
14:35
Một số lưu ý về function
22:23
ES6 - Enhanced object properties
15:17
this in javascript
15:16
bind, call and apply
13:18
Iteration protocol
15:45
Curry function: divisibleBy(n)
1 câu hỏi
Random color but should be different from previous color
1 câu hỏi
Cài đặt counter(label = 'default')
1 câu hỏi

ECMAScript features theo từng năm

9 lectures
TODO: Lập một bảng thống kê về các tính năng theo từng năm
00:29
Tổng quan về ECMAScript
17:44
ECMAScript 2016
07:36
ECMAScript 2017
16:22
ECMAScript 2018
13:31
ECMAScript 2019
13:48
ECMAScript 2020
18:21
ECMAScript 2021
15:15
ECMAScript 2022 / What's next?
00:07

Lập trình bất đồng bộ

20 lectures
Tổng quan về lập trình bất đồng bộ
18:25
Một số ý cần nắm được sau chương này
00:39
setTimeout()
19:12
Debounce technique
16:22
Throttle technique
16:38
setTimeout() with "this"
14:57
setInterval()
11:43
Event loop
20:52
Learn more about Event Loop
00:18
Ajax
19:26
Promise
21:36
fetch()
23:29
Request and Response
00:45
CSP and CORS
14:54
async function
11:52
top-level await keyword
00:22
JSON
09:20
Bài tập debounce vs throttle
00:05
Bài tập đồng hồ
00:23
Kiểm tra về bất đồng bộ
11 câu hỏi

API and Postman

4 lectures
API documentation
16:56
Cách sử dụng APIs
14:36
Tips làm việc với backend
01:46
Postman cơ bản
19:01

Browser and Web APIs

9 lectures
Lưu ý trước khi bắt đầu
00:32
Giới thiệu về browser
12:04
Browser components
15:28
Web APIs
17:39
Browser URL
19:46
What happens when you visit a website?
08:33
Console API
16:39
Storage API
18:07
Browser Network
11:21

Làm việc với DOM

27 lectures
Tổng quan về DOM
14:56
Cấu trúc cây DOM
14:10
Document and Element Interface
14:26
Query DOM
18:56
Add JS to HTML
17:31
DOM Traversal
16:07
Create new Element
16:16
textContent, innerText and innerHTML
17:06
Update element (attrs, class, styles, dataset)
17:26
Remove element
10:32
Clone element
09:52
Render complex item
16:22
Introduction to Events
16:10
Todo actions (mark as done and remove)
21:06
BÀI TẬP: Thay đổi styles cho nút Finish
00:14
Data persist when reloading
18:52
Bổ sung trường hợp localStorage chưa có dữ liệu
00:28
Capturing and Bubbling
17:30
Browser default actions
08:24
Create todo
21:42
Update todo p1
13:45
Update todo p2
22:02
BÀI TẬP: checkbox isCompleted
00:10
Search todo
19:28
Filter todo
10:33
Thử sức bài tập search và filter
00:12
Persist filters
23:55

Làm game tic-tac-toe

10 lectures
Demo game tic-tac-toe
07:10
Viết selectors cho game elements
18:31
Push code lên Github và bật Github Pages
13:31
Handle cell click
17:42
Thử sức cài đặt hàm checkGameStatus
00:10
Implement checkGameStatus
22:54
Integrate win logic
20:13
Handle replay button click
13:17
Event delegation
15:57
Deploy to Vercel
08:54

Làm game color matching

10 lectures
Color Matching demo
08:53
Markup explains
07:19
Random 8 pairs of colors
18:04
Bind colors to li elements
11:26
Integrate game logic
26:32
Handle play again click
13:58
Thử sức tự cài đặt phần timer
00:12
Add timer
19:59
Fix race condition issue and deploy
09:25
Set background color khi match
00:10

Post UI - Setup and Home Page

24 lectures
Demo final project
05:24
Node Package Manager
21:03
Module Bundler
27:20
Setup vanilla js project using ViteJS
13:48
Config multi-page for ViteJS
08:17
public folder and CDN cache
13:04
from Git to Vercel
12:54
Setup UI Template
18:25
Add Carousel section
18:15
API module overview
11:06
Setup axiosClient
17:54
Setup API file
19:31
Per-request config
12:30
Interceptors
14:28
Handle API errors
20:56
Tree shaking
15:57
Render Post List
19:12
dayjs - fallback image - truncate desc
15:52
Pagination - bind click event
18:49
Pagination - Disable page links
11:38
Pagination - refetch data on page change
14:24
Search Posts with debounce
14:49
Refactor: make code connected
07:31
Refactor: smart and dump function
23:44

Post UI - Detail Page

7 lectures
Post detail demo
04:07
Redirect to Post detail page on click
04:45
Fetch API and render details
18:21
Lightbox - Handle image click (event delegation)
14:11
Lightbox - Show modal
18:02
Lightbox - Prev/Next
12:17
Fix CLS (Cumulative Layout Shift)
08:51

Post UI - Add Edit Post Page

31 lectures
Giới thiệu UI và flow của trang Add Edit Post
11:09
Handle edit click
14:29
Mode: Add or Edit
08:10
Inititalize form values
15:08
Get form values on submit
13:31
Client và Server Validation?
07:28
HTML5 form validation (built-in)
11:31
:valid và :invalid pseudo class
07:45
Mobile keyboard input
08:39
Constraint Validation API
13:10
Custom Error Message
18:56
Yup basics
12:57
Yup - Custom logic with test()
06:25
Yup - Validate retype password
05:36
Yup - Validate theo điều kiện với when()
05:25
Yup - Handle sai kiểu dữ liệu với typeError()
04:06
Áp dụng yup với dự án để hỗ trợ phần validation
14:56
Handle form submission
17:37
Add toast message lib
13:07
Ngăn chặn submission liên tục
13:16
Random image với picsum.photos
11:03
Image Source UI
05:43
Thử sức tự cài đặt chức năng show/hide controls
00:18
Show / Hide control tương ứng với radio option
10:21
Preview image khi chọn image
11:27
Conditional Validation
16:33
Validate file size
11:34
Submit form-data để upload image
15:54
Validation on change
12:37
Remove post
14:10
Tạm kết đồ án cuối kỳ Post UI, kế tiếp là?
00:30

Một số chủ đề mở rộng của javascript

1 lectures
Một số nội dung dự kiến
00:13

Prototype Chain

1 lectures
Coming soon
00:00

Regular Expression

1 lectures
Coming soon...
00:00

i18n

1 lectures
Coming soon...
00:00

Clean code

1 lectures
Coming soon...
00:00

Tiếp nối vào ReactJS

1 lectures
Coming soon...
00:00

Tổng kết khoá học

1 lectures
Thank you!
00:09

Đánh giá của học viên

Chưa có đánh giá
Course Rating
5
0%
4
0%
3
0%
2
0%
1
0%

Bình luận khách hàng

Viết Bình Luận

Bạn đánh giá khoá học này thế nào?

image

Đăng ký get khoá học Udemy - Unica - Gitiho giá chỉ 50k!

Get khoá học giá rẻ ngay trước khi bị fix.