You are on page 1of 8

13/4/2020 Tổng hợp sách hay về JavaScript – Từ nhập môn đến nâng cao | Từ coder đến developer – Tôi

er đến developer – Tôi đi code dạo

Từ coder đến developer – Tôi đi code dạo

CHUYỆN CODING, CHUYỆN LINH TINH

Tổng hợp sách hay về JavaScript – Từ nhập môn


đến nâng cao

06/03/2018 | PHẠM HUY HOÀNG | 31 COMMENTS


Ở bài trước, khi nói về top 5 ngôn ngữ nên học, mình có bảo rằng JavaScript hiện tại đang là một
ngôn ngữ hot và rất đáng học. Vì vậy, hôm nay mình sẽ chia sẻ những sách hay về JavaScript, với
mức độ từ cơ bản đến nâng cao nhé!

Bản thân tài liệu về JS tiếng Việt khá ít, chắc từ thời jQuery rồi, cũng không cập nhật mấy. Vì minh
vẫn hay khuyên các bạn nên học lập trình bằng tiếng Anh
(h ps://toidicodedao.com/2016/06/28/khong-nen-hoc-lap-trinh-tieng-viet/), do đó nên những sách
mình giới thiệu trong bài chỉ toàn là tiếng Anh thôi nhé.

Cấp độ nhập môn – Kiến thức nền tảng


https://toidicodedao.com/2018/03/06/tong-hop-sach-hay-ve-javascript-tu-nhap-mon-den-nang-cao/ 1/8
13/4/2020 Tổng hợp sách hay về JavaScript – Từ nhập môn đến nâng cao | Từ coder đến developer – Tôi đi code dạo

Ở cấp độ này, các bạn mới tìm hiểu JavaScript cũng như tìm hiểu về lập trình nói chung. Do vậy
mình chọn sách đi sâu vào kiến thức nền tảng, trình bày dễ đọc dễ hiểu.

(h ps://toidicodedao.files.wordpress.com/2017/12/9781449340131.jpg)Head
First JavaScript Programming: Đây là dòng sách hồi xưa mình dùng để học
JavaScript. Thời của mình là bản 2007, các bạn nên tìm bản 2014 đọc vì nó
nhiều thay đổi hay hơn.

Dòng sách HeadFirst có ưu điểm là dễ đọc, nhiều hình minh hoạ, dễ nhớ
nhưng hơi dài dòng tí. Cuốn này các bạn đọc tới chương 9 là ngừng được rồi,
từ chương 10 về sau cũng khá nhiều khái niệm nâng cao, từ từ quay lại đọc
sau.

(h ps://toidicodedao.files.wordpress.com/2017/12/images.jpeg)JavaScript
and JQuery: Interactive Front-End Web Development: Cuốn sách này mới
nổi trong thời gian gần đây. Nội dung cũng khá ok. Sách màu 100% và có
rất nhiều hình minh hoạ nên dễ đọc dễ làm theo. Dân tình đánh giá rất cao
trên Amazon.

Ở giai đoạn này các bạn chỉ cần làm quen với syntax của JavaScript và hiểu
rõ cách dùng variable, method, if/else, loop, array v…v là tạm ok rồi nhé.

Cấp độ trung bình – Sau khoảng 2,3 tháng

Sau khi đã vững JavaScript cơ bản thì bạn có thể tìm hiểu thêm về AJAX, DOM và các khái niệm “cao
siêu” hơn như closure, prototype (h ps://toidicodedao.com/2016/02/02/series-javascript-sida-po-ro-
to-tai-prototype-la-cai-gi/), OOP (h ps://toidicodedao.com/2016/01/19/series-javascript-sida-object-
trong-javascript/), …

(h ps://toidicodedao.files.wordpress.com/2017/12/9781593275846.jpg)Eloqu
ent JavaScript, Second Edition: Cuốn sách này bao quát những kiến thức từ
cơ bản đến nâng cao trong JavaScript, bao gồm cả DOM, Canvas, Ajax,
NodeJS.

Một điểm hay của sách là tác giả không chỉ nói về JavaScript mà còn cover
luôn cả những kiến thức nền bên dưới (giao thức HTTP là gì, browser dùng
gì để gửi request v…v).

Sách hơi dài, khoảng 400 trang nhưng có hình minh hoạ, có cả project mẫu
cho các bạn làm theo nên các bạn có thể tranh thủ luyện tập luôn.

https://toidicodedao.com/2018/03/06/tong-hop-sach-hay-ve-javascript-tu-nhap-mon-den-nang-cao/ 2/8
13/4/2020 Tổng hợp sách hay về JavaScript – Từ nhập môn đến nâng cao | Từ coder đến developer – Tôi đi code dạo

(h ps://toidicodedao.files.wordpress.com/2017/12/9781118026694.jpg)Professional JavaScript for


Web Developers, 4th Edition: Nội dung cũng tương tự như phía trên, sách trình bày toàn bộ những
API của JavaScript và DOM. Phiên bản 4th này còn giới thiệu thêm về ES6
(h ps://toidicodedao.com/2016/04/05/series-javascript-sida-cung-lam-quen-va-
chich-nham-nghich-es6/) nữa.

(h ps://toidicodedao.files.wordpress.com/2017/12/image
s-1.jpeg)Secret of the JavaScript Ninja, Second Edition:
Tác giả của cuốn sách là John Resig, tác giả của thư viện
jQuery thần thánh
(h ps://toidicodedao.com/2016/08/16/js-truyen-ki-chuong-1-luoc-su-giang-ho/).

Anh chia sẻ và giải thích rất kĩ về các khái niệm scope, closure trong JavaScript,
cách viết code test, cách viết code chạy được trên nhiều trình duyệt khác nhau.

Cuốn sách này có nhiều kinh nghiệm, pa ern và code mẫu khá hay mà bạn sẽ
khó mà tìm được trong những sách khác.

Cấp độ nâng cao – Khi bạn muốn đi sâu đi xa hơn sau 1,2 năm

Lúc này, khi khả năng JS đã đạt tới một trình độ nhất định, bạn nên tìm hiểu về cách thức hoạt động
của ngôn ngữ JavaScript (code được parse thế nào, execution ra sao, scope hoạt động như thế nào).
Điều này tạo nên sự khác biệt giữa junior và senior (h ps://toidicodedao.com/2017/04/20/khoang-
trong-kien-thuc-lap-trinh-vien/).

(h ps://toidicodedao.files.wordpress.com/2017/12/9780596517748.jpg)JavaScri
pt The Good Parts: Chỉ nên đọc cuốn này khi bạn đã có khoảng 1,2 năm kinh
nghiệm code JavaScript. Tác giả chia sẻ những thứ kì quặc, sida của JavaScript;
những thói xấu mà JS developer hay mắc phải (eval, global variable, …); cùng
với những lời khuyên để ta viết code tốt hơn.

(h ps://toidicodedao.files.wordpress.com/2017/12
/kdyv0wnh.png)You don’t know JS: Đây là một
series dài gần 5, 6 cuốn về JavaScript. Tác giả đi
sâu giải thích lại những khái niệm JavaScript cơ
bản.

Mình nghĩ rằng thay vì cắm đầu cắm cổ học framework này nọ thì nên
bỏ thời gian đọc series này, nó sẽ nhiều lần làm bạn ngạc nhiên, WTF…
vì “Ồ, hoá ra JavaScript là thế này à!”

(h ps://toidicodedao.files.wordpress.com/2017/12/images-2.jpeg)JS
Pa erns + Learning JS Pa erns: Đây là 2 cuốn sách viết về những design pa ern
(h ps://toidicodedao.com/2016/03/01/nhap-mon-design-pa ern-phong-cach-kiem-hiep/) trong
JavaScript và cách áp dụng chúng trong thực tế.

https://toidicodedao.com/2018/03/06/tong-hop-sach-hay-ve-javascript-tu-nhap-mon-den-nang-cao/ 3/8
13/4/2020 Tổng hợp sách hay về JavaScript – Từ nhập môn đến nâng cao | Từ coder đến developer – Tôi đi code dạo

Đọc và nắm vững các design pa ern này, khi gặp những vấn đề tương tự lúc
code, các bạn sẽ biết cách áp dụng để giải quyết vấn đề một cách hiệu quả.

Ngoài ra, nếu junior chỉ viết code sao cho chạy được thì senior phải khác. Đạt
đến tầm này thì bạn phải biết cách viết code sao cho dễ đọc, dễ hiểu, dễ bảo
trì. Do đó đừng đọc sách JS không mà hãy đọc thêm những cuốn như Clean
Code (h ps://toidicodedao.com/2015/04/09/review-sach-clean-code-a-
handbook-of-agile-software-craftsmanship/), Code Complete nhé.

Kĩ năng chuyên biệt

(h ps://toidicodedao.files.wordpress.com/2017/12/images-
3.jpeg)Understanding ECMAScript 6: The Definitive Guide for JavaScript
Developers + You don’t know JS ES6 & Beyond: Nếu trước giờ bạn đã làm việc
với JavaScript, hiện tại đang muốn tìm hiểu thêm về ES6 thì đây là 2 cuốn sách
dành cho bạn.

Một hai năm nữa thì ES6 sẽ trở thành JavaScript căn bản luôn rồi nên nếu học
được thì các bạn tranh thủ học luôn đi nhé.

(h ps://toidicodedao.files.wordpress.com/2017/12/i
mages-4.jpeg)Node – Up & Running + Mastering NodeJS: NodeJS là
một runtime của JavaScript, được build dựa trên nền Google v8 Engine,
cho phép chạy JavaScript trên server
(h ps://toidicodedao.com/2016/08/18/js-truyen-ki-chuong-2-vo-lam-day-
song/). Hiện tại cũng có rất nhiều Website viết back-end bằng NodeJS.

Nếu bạn làm về back-end (h ps://toidicodedao.com/2017/08/22/lam-the-


nao-tro-thanh-web-developer-phan-2/), muốn thử sức với NodeJS thì nên
đọc 2 cuốn này để hiểu về cơ bản NodeJS runtime, cùng với cách viết
code cho phù hợp với mô hình asynchonous
(h ps://toidicodedao.com/2017/10/10/async-await-trong-javascript/) của
nó nhé.

Trong bài này, mình không giới thiệu sách về các JavaScript library/framework như AngularJS, React,
VueJS, Express. Vì mỗi library/framework cũng có tận 2,3 cuốn sách nên giới thiệu hết sẽ làm loãng
bài viết. Các bạn học vững cơ bản JavaScript thì framework gì cũng chơi được hết
(h ps://toidicodedao.com/2016/08/23/js-truyen-ki-chuong-3-quan-hung-cat-cu/) nhé.

Lời khuyên cuối cùng


https://toidicodedao.com/2018/03/06/tong-hop-sach-hay-ve-javascript-tu-nhap-mon-den-nang-cao/ 4/8
13/4/2020 Tổng hợp sách hay về JavaScript – Từ nhập môn đến nâng cao | Từ coder đến developer – Tôi đi code dạo

Giai đoạn đầu các bạn nên đọc và làm theo sách, vì nó có những kiến thức nền tảng rất quan trọng
mà video hay tutorial không hề có. Tuy nhiên, đọc thì đọc, nhớ phải code theo và làm một cái pet
project (h ps://toidicodedao.com/2017/01/19/code-pet-project/) gì đấy.

Nếu bạn có hứng thú thì cứ để lại commnet, nhiều người quan tâm mình sẽ viết một bài về những
thứ bạn có thể dùng JavaScipt để build và luyện tập nhé!

Còn các bạn thì sao, có cuốn sách nào hay về JavaScript thì nhớ chia sẻ với mọi người trong phần
comment nha.

BACK-END FRAMEWORK FRONT-END HEADFIRST


JAVASCRIPT JAVASCRIPT JAVASCRIPT FRAMEWORK JAVASCRIPT
SIDA JQUERY JS JS EBOOK JS TRUYỀN KÌ LẬP TRÌNH SÁCH HAY
JAVASCRIPT THƯ VIỆN

31 thoughts on “Tổng hợp sách hay về JavaScript – Từ


nhập môn đến nâng cao”

1. Tuấn Anh says:


06/03/2018 AT 8:22 PM
Cảm ơn a nhiều, đúng thứ em cần nhưng tiếng anh của em còn kém chắc sẽ mất nhiều thời gian
lắm .

2. Cao Anh Quoc says:


07/03/2018 AT 8:50 AM
Cảm ơn anh vì chia sẻ nhiều sách hay về JS. Mong anh giới thiệu thêm sách để luyện tập để build
1 project về JS

3. Quang Hồ Trung Thịnh says:


07/03/2018 AT 8:52 AM
cảm ơn bạn đã giới thiệu những cuốn sách hay và lan tỏa thói quen tốt (đọc sách) đến mọi người

4. Tùng Đường says:


07/03/2018 AT 9:11 AM
Cảm ơn anh nhiều, mong anh ra thêm thật nhiều bài viết về JS

5. Đoàn Đức Hiệp says:


07/03/2018 AT 9:24 AM
bài viết rất hay, trước mình không đọc sách nhưng qua blog này mình đã đọc một số cuốn và thấy
rất hay hiệu quả, cảm ơn những gì bạn đóng góp cho cộng đồng

6. Linh Đặng says:


07/03/2018 AT 9:25 AM
Cảm ơn anh. Em rất hứng thú với JS. Rất mong được anh chia sẻ tiếp những kiến thức về JS

https://toidicodedao.com/2018/03/06/tong-hop-sach-hay-ve-javascript-tu-nhap-mon-den-nang-cao/ 5/8
13/4/2020 Tổng hợp sách hay về JavaScript – Từ nhập môn đến nâng cao | Từ coder đến developer – Tôi đi code dạo

7. Nguyễn Tiến Minh says:


07/03/2018 AT 10:45 AM
Quyển Learning Javascript của O’Reilly cũng rất hay không biết a đã xem chưa

1. Phạm Huy Hoàng says:


08/03/2018 AT 12:01 AM
À quyển đó anh chưa đọc

2. Bang Tran says:


05/04/2018 AT 2:42 PM
Bạn lấy ko mình gửi cho

8. Hiệp. says:
07/03/2018 AT 11:26 AM
Anh có file .pdf cuốn Js and Jquery không ạ? Em tìm trên mạng không thấy anh ạ.

1. Phạm Huy Hoàng says:


08/03/2018 AT 12:01 AM
Anh ko có e nhé

9. Mạnh says:
07/03/2018 AT 3:53 PM
Anh chia sẻ về C# nữa anh nhé, em đang học C# nhưng vẫn chưa biết lộ trình học như nào, học
những framework gì và bên ngoài họ dùng C# để làm những gì. Cảm ơn anh đã chia sẻ.

10. Nguyễn Hòa says:


08/03/2018 AT 11:12 AM
Đúng cái đang cần luôn anh Hòang ơi. Cảm ơn anh nhiều (y)

Sent from Mail for Windows 10

11. Đen Mụi Mụi says:


08/03/2018 AT 4:17 PM
Anh code dạo ơi, anh dịch sách Javascript đi anh, giúp đỡ cho nhiều bạn nghèo nàn tiếng anh như
e. :v

1. Phạm Huy Hoàng says:


08/03/2018 AT 6:16 PM
Ko em, tự học tiêng Anh đi nhé. Chờ sách dịch ko bao giờ giỏi được đâu

12. Duy An says:


08/03/2018 AT 9:07 PM
Trước khi anh viết bài này, em đã tìm đọc và đi mua cuốn Eloquent JavaScript rồi, vậy đọc luôn
cuốn này được không ạ ?? Hay phải đọc theo thứ tự trên mà a đã liệt kê

1. Phạm Huy Hoàng says:


09/03/2018 AT 12:07 AM
À tùy trình độ của em thôi nhé, đọc mà hiểu là được

13. Phước says:

https://toidicodedao.com/2018/03/06/tong-hop-sach-hay-ve-javascript-tu-nhap-mon-den-nang-cao/ 6/8
13/4/2020 Tổng hợp sách hay về JavaScript – Từ nhập môn đến nâng cao | Từ coder đến developer – Tôi đi code dạo

04/04/2018 AT 2:45 PM
Anh ơi em đang nghiên cứu về ES6 cũng như viết Algorithm bằng ES6 rồi chuyển qua học Node,
những cuốn nào để em nắm chắc được ES6 không anh.

14. Quốc Khánh says:


14/04/2018 AT 8:59 PM
Cảm ơn Hoàng, rất tuyệt. Bạn là người Thầy lớn của chúng tôi! Mong Hoàng sớm chia sẻ tiếp!

15. Chu Minh Nam says:


23/04/2018 AT 3:33 PM
Có tiếng việt không ad, mình hơi kém tiếng anh.

16. Hưng Nguyễn says:


24/04/2018 AT 9:40 AM
Cảm ơn bạn nhé.

17. Duy Phương says:


18/05/2018 AT 1:53 PM
Thanks bác, e đang bắt đầu cày series You Don’t Know JS. Đặt gạch hóng bài “những thứ bạn có
thể dùng JavaScipt để build và luyện tập” của bác

18. Huy says:


09/08/2018 AT 10:36 PM
Hóng bài viết “những thứ bạn có thể dùng JavaScipt để build và luyện tập” của Hoàng quá mà
chưa thấy

1. Phạm Huy Hoàng says:


09/08/2018 AT 10:48 PM
À quên viết mất hihi, bạn nhắc mình mới nhớ :3

1. Huy says:
18/08/2018 AT 6:26 PM
Mong bạn sớm ra bài này, mình đang tìm hiểu JavaScript nên cũng khá mơ hồ về cách
luyện tập nó.

2. huynhdieutuong says:
03/03/2019 AT 2:26 PM
Vẫn đang hóng “những thứ bạn có thể dùng JavaScipt để build và luyện tập”

3. Phạm Huy Hoàng says:


03/03/2019 AT 10:27 PM
À trên blog có lâu rồi bạn nhé h ps://toidicodedao.com/2018/09/04/project-luyen-tap-ki-
nang-lap-trinh/

19. Lee Nguyen says:


16/08/2018 AT 9:51 AM
cảm ơn anh đã chia sẻ kinh nghiệm hay

20. japananh says:


18/11/2018 AT 9:50 PM
https://toidicodedao.com/2018/03/06/tong-hop-sach-hay-ve-javascript-tu-nhap-mon-den-nang-cao/ 7/8
13/4/2020 Tổng hợp sách hay về JavaScript – Từ nhập môn đến nâng cao | Từ coder đến developer – Tôi đi code dạo

cảm ơn anh đã chia sẻ.

21. Dat Nguyen says:


17/05/2019 AT 10:29 AM
a có thể giải thích e ví dụ này với let và var không ạ, e đọc một số chỗ rồi nhưng chưa thông lắm
var funcs = [];
for (let i = 0; i < 5; i++) {
funcs.push( function(){
console.log( i );
} );
}
funcs[3](); // 3 khi khai báo let i
funcs[3](); // 5 khi khai báo var i

1. Chuong says:
02/07/2019 AT 6:40 PM
Theo mình hiểu thì let khác var ở chỗ let có scope. Bạn khai báo nó ở đâu thì nó CHỈ “có hiệu
lực” ở đó – xin lỗi mình cũng không biết dùng từ sao cho đúng.

Trong vd trên, với var i = 0, kết thúc vòng lặp i = 5. Khi gọi funcs[3]() , do var cái scope không
chặt chẽ, nên khi gọi function, log cái i ra, thay vì nó ra 3, nó lại lấy i = 5, do đó là giá trị i cuối
cùng, sau khi kết thúc vòng lặp.

Còn với let, do scope của nó chỉ nằm trong cái function, nên giá trị của nó đươc bảo toàn,
không bị thay đổi. Dù khi kết thúc vòng lặp, i = 5, nhưng tại index 03, giá trị của i = 3 và nó
không bị thay đổi.

Mình nghe người ta chuyển qua let thay vì var 1 phần vì tính chặt chẽ của cái scope của nó ^^

https://toidicodedao.com/2018/03/06/tong-hop-sach-hay-ve-javascript-tu-nhap-mon-den-nang-cao/ 8/8

You might also like