前端開發(fā)資料庫
輸入機(jī)構(gòu)/課程/服務(wù)名稱

關(guān)于JavaScript的好書有哪些?

2021年12月09日最后更新
# 前端開發(fā) # IT培訓(xùn)



1.Javascript DOM編程藝術(shù)(第2版)


這本書作為被大家推薦的最多的前端入門書籍是有道理的。
他能真正讓大家了解dom腳本編程,或是說前端編程技術(shù)背后的思路和原則。

對(duì)于初學(xué)者來說,這本書沒有任何門檻,按部就班跟著書籍實(shí)例編寫代碼即可。
我們會(huì)知曉如何對(duì)瀏覽器元素操作和掌控,會(huì)學(xué)會(huì)如何實(shí)現(xiàn)簡(jiǎn)單的頁面效果。
這種簡(jiǎn)單易得的成就感是一個(gè)編程語言入門時(shí)最難能可貴的體驗(yàn)。

閱讀建議:
這本書雖然簡(jiǎn)單,但是能讓人快速對(duì)前端產(chǎn)生興趣和成就感。
不過后續(xù)學(xué)習(xí)jquery的時(shí)候可能會(huì)產(chǎn)生挫敗感。原生js dom操作的成就感會(huì)被jquery便捷的API所徹底打敗。所以一定要恰當(dāng)?shù)恼{(diào)整心態(tài),轉(zhuǎn)換思維方式,正確認(rèn)識(shí)到j(luò)query和原生js分別的優(yōu)劣之處。
在熟練使用jquery后還能想起來翻看這本書,找到之前未曾發(fā)現(xiàn)的閃光點(diǎn),就是入門成功了。


2. JavsScript高級(jí)程序設(shè)計(jì)(第三版)


無論何時(shí),這都是學(xué)習(xí)js最好的書。

如果說其他的書都是在合適的階段會(huì)有不一般的體驗(yàn)。
這本書就是無論什么階段,都?jí)蚰愀形蛞环摹?/p>

當(dāng)你看完了市場(chǎng)上js相關(guān)(不包括框架類庫的最佳實(shí)踐類)的所有書籍。你再回去看這本書,也會(huì)發(fā)現(xiàn)其實(shí)95%的內(nèi)容早就寫在這本書里了,只不過你當(dāng)時(shí)等級(jí)不夠,根本沒有意識(shí)到。

這本書排版舒服,翻譯得體,內(nèi)容豐富,語言流暢。涵蓋了js語法(面向?qū)ο?,閉包作用域等),js使用(dom,bom,html5API),編程實(shí)踐(高階函數(shù),編碼規(guī)范)等程序員使用javascript時(shí)會(huì)遇到的大部分問題。

(今天在上海面試了一天。大部分很順利,只是有幾個(gè)比較偏的問題沒回答好。晚上回去之后一翻高程三,果然在里面都寫得明明白白的。不得不服。)

閱讀建議:
人們喜歡把他和犀牛書拿一起推薦,不過就我看來,他們完全不是一個(gè)可讀性上的。
一個(gè)是課本一個(gè)是字典。而且還是佶屈聱牙的字典。

所以無論何時(shí)我都會(huì)把高程三排在js推薦書籍的第一位。


3. 鋒利的jQuery

這本書如果緊接著dom編程看,會(huì)如我我說的那樣瞬間摧毀你的小小的成就感。
因?yàn)檫@本工具書級(jí)別的書簡(jiǎn)單暴力到不給你思考什么“平穩(wěn)退化”,“js動(dòng)畫計(jì)時(shí)器”這些dom編程中提及的問題,就直接就甩出一大片簡(jiǎn)單有效的jqueryAPI顛覆你的世界觀。

這本書是如此的易懂以至于看完之后瞬間就覺得自己能把web玩出一片花來了。

作為工具書級(jí)別的書,或是說學(xué)習(xí)jqueryAPI的書,這是首選。

閱讀建議:
熟悉jquery是每個(gè)前端必須要會(huì)的事。
只是不要被Jquery的便捷迷惑,而拋離原生js,把原生js貶得一文不值,否則后面會(huì)付出昂貴的代價(jià)。


4. 學(xué)習(xí)Javascript數(shù)據(jù)結(jié)構(gòu)與算法


這本書相對(duì)是一本冷門書。

為什么我會(huì)推薦他,是因?yàn)樗芙鉀Q每個(gè)半路出家的js程序員都曾思考過的一些問題:
1. 我們的數(shù)組Array這么強(qiáng)大,要棧Stack,隊(duì)列Queue這些功能少,半半拉拉的東西干什么呢?
2. 我們學(xué)的數(shù)據(jù)結(jié)構(gòu)搞來搞去好像也就那些玩意,為什么被大家這么推崇,還要分門別類討論呢?

所以這本書只是為何告訴你上面這些問題的答案:
1. 棧和隊(duì)列本來就沒有Array功能強(qiáng)。沒有Stack和Queue類只是因?yàn)镋S5不去實(shí)現(xiàn)它而已。作為一種相互之間存在一種或多種特定關(guān)系的數(shù)據(jù)集合,其存在意義是不應(yīng)該被其功能強(qiáng)大與否來決定的。
2. 數(shù)據(jù)結(jié)構(gòu)和編程語言無關(guān)。語言死了,他們會(huì)在下一門語言里重生。哪怕計(jì)算機(jī)死了,他們都會(huì)在下一個(gè)概念體里重生。

閱讀建議:
跟著書本把這里面的結(jié)構(gòu)全部敲一遍,快的話一天就能搞定。
從此你便再不怕懼怕js相關(guān)的簡(jiǎn)單數(shù)據(jù)結(jié)構(gòu)問題。
但是,遇上高級(jí)的樹,圖等問題該跪還是要跪。因?yàn)檫@本書虎頭蛇尾,后面的高級(jí)點(diǎn)的數(shù)據(jù)結(jié)構(gòu)介紹的不夠深。
適合經(jīng)常反思“它從哪里來,要到哪里去?”的js程序員,或后悔以前數(shù)據(jù)結(jié)構(gòu)沒好好學(xué)的前端同學(xué)。


5. JavaScript設(shè)計(jì)模式與開發(fā)實(shí)踐



我認(rèn)為騰訊AlloyTeam的這本書對(duì)我?guī)椭敲栏叱倘?/p>

那時(shí)候我恰好換公司,從原來的開發(fā)方式切換成另一種完全不同的開發(fā)方式,讓我很不適應(yīng)。

這本書及時(shí)的蹦出來,他拿實(shí)際的應(yīng)用場(chǎng)景舉例,告訴你不同js項(xiàng)目里如何共通設(shè)計(jì)模式,還極其詳細(xì)的介紹了函數(shù)的高級(jí)用法,能讓你對(duì)js高階函數(shù)的認(rèn)知上升一個(gè)臺(tái)階。
難能可貴的是他還拿java作為靜態(tài)語言的類比。從語言統(tǒng)一高度來給你分析這些問題。

和上本介紹數(shù)據(jù)結(jié)構(gòu)的書一樣,這本書有的放矢,能完美的解決對(duì)js設(shè)計(jì)模式有疑問的同學(xué)的實(shí)際問題。
他比上本書更深刻,更易讀,也更貼近實(shí)踐。

閱讀建議:
這是本適合反復(fù)閱讀的書籍。
如果你的思路能根據(jù)應(yīng)用場(chǎng)景自動(dòng)切換到最適合的設(shè)計(jì)模式,說明你已吃透這本書了。


6. 高性能JavaScript


作為Orelly唯一一本我確實(shí)認(rèn)可的javascript相關(guān)的書。
他摒棄了Orelly系列所有我不喜歡的特點(diǎn):
老外的聊天說教式閱讀體驗(yàn),樣例不夠豐富,排版單一,破事水等。

他的優(yōu)點(diǎn)如下:
1. 情景豐富,基本涉及所有js性能優(yōu)化的場(chǎng)景。還會(huì)給出不同場(chǎng)景的實(shí)際測(cè)試數(shù)據(jù),真實(shí)可信。我們?cè)陂喿x這些場(chǎng)景實(shí)例的同時(shí)也豐富了自己js的使用經(jīng)驗(yàn)。
2. 給出了很多看似"旁門左道"的解決方案,而這些冷門的解決方案恰恰是有些人死活百度不到的真正能解決問題的最優(yōu)解。
3. 在說問題的同時(shí)說原理,深入淺出,游刃有余。所以這本書不僅僅是一本介紹js性能相關(guān)的書,而是一本涉及瀏覽器原理,js解析原理,用戶體驗(yàn)等知識(shí)的javascript最佳注解。

閱讀建議:
建議和高程三一起看,可以算是高程三閱讀的最佳伴侶。
高程三告訴你“他叫什么,他什么樣”,
這本書就告訴你“他為什么”,“他該怎樣”。

所以,當(dāng)別人還在為某些問題絞盡腦汁的時(shí)候,你已經(jīng)從起點(diǎn)上干翻他們了。


7. 你不知道的JavaScript(YOU DONT KNOW JAVASCRIPT)


大名鼎鼎的Github開源的書籍。

為了他的名氣我也得買一本實(shí)體書來拜讀下。
這本是上卷,只涉及作用域和閉包,this和對(duì)象原型兩部分。

不過其深入程度是其他js書籍難以企及的。
可以說,這已經(jīng)是大部分前端程序員對(duì)js語法可以深入了解的最底層了,再往下就直面編譯原理了。


*文章內(nèi)容和圖片均來源于網(wǎng)絡(luò),如有侵權(quán),請(qǐng)聯(lián)系刪除。

查看剩余內(nèi)容
loading
Hi,我是教育寶平臺(tái)顧問 添加我的微信,在查找或下載資料時(shí),有任何問題,我會(huì)隨時(shí)為您解決~
loading
掃描二維碼 添加顧問微信

點(diǎn)贊

收藏

喜歡此內(nèi)容的人還喜歡
  1. 本盤點(diǎn)總計(jì)涉及6家上海web前端開發(fā)培訓(xùn)機(jī)構(gòu),分別是上海博為峰、上海達(dá)內(nèi)教育、上海交大教育集團(tuán)IT研究院、上?;酃嚷殬I(yè)技能培訓(xùn)、上海非凡教育、上海少兒碼奇編程。該盤點(diǎn)基于教育寶(中國知名的第三方平臺(tái))的信息和數(shù)據(jù)。
    攻略
    #前端開發(fā)
  2. 本盤點(diǎn)總計(jì)涉及7家武漢Web前端開發(fā)培訓(xùn)機(jī)構(gòu),包括武漢博為峰、武漢達(dá)內(nèi)教育、武漢蝸牛學(xué)苑、武漢軟帝IT培訓(xùn)學(xué)校、武漢潤天教育、武漢比屋教育、武漢火星時(shí)代教育。該盤點(diǎn)基于教育寶(中國知名的第三方平臺(tái))的信息和數(shù)據(jù)。
    攻略
    #前端開發(fā)
  3. 本盤點(diǎn)總計(jì)涉及8家南京web前端開發(fā)培訓(xùn)機(jī)構(gòu),包括南京博為峰、萬和IT教育、南京達(dá)內(nèi)教育、南京銳碼IT教育、南京學(xué)壩教育、南京蝸牛學(xué)苑、凌文教育、南京明時(shí)教育。該盤點(diǎn)基于教育寶(中國知名的第三方平臺(tái))的信息和數(shù)據(jù)。
    攻略
    #前端開發(fā)
相關(guān)課程 更多
教育寶IT技術(shù)頻道
教育寶致力于打造中國最專業(yè)的IT技術(shù)學(xué)習(xí)平臺(tái),為IT技術(shù)學(xué)員、教育機(jī)構(gòu)、從業(yè)者和上下游搭建連接、互動(dòng)、交流和賦能平臺(tái)。