中图网(原中国图书网):网上书店,尾货特色书店,30万种特价书低至2折!

歡迎光臨中圖網(wǎng) 請(qǐng) | 注冊(cè)
> >
O’Reilly精品圖書系列JavaScript權(quán)威指南(原書第7版)

包郵 O’Reilly精品圖書系列JavaScript權(quán)威指南(原書第7版)

出版社:機(jī)械工業(yè)出版社出版時(shí)間:2021-03-01
開本: 其他 頁數(shù): 596
中 圖 價(jià):¥95.9(6.9折) 定價(jià)  ¥139.0 登錄后可看到會(huì)員價(jià)
加入購物車 收藏
開年大促, 全場(chǎng)包郵
?新疆、西藏除外
本類五星書更多>

O’Reilly精品圖書系列JavaScript權(quán)威指南(原書第7版) 版權(quán)信息

O’Reilly精品圖書系列JavaScript權(quán)威指南(原書第7版) 本書特色

適讀人群 :本書適合希望學(xué)習(xí)Web編程語言的初、中級(jí)程序員和希望精通JavaScript的程序員閱讀。近25年來,這本“犀牛書”憑著完整的內(nèi)容、細(xì)致的講解以及海量針對(duì)性的示例而受到全球讀者的一致好評(píng)。經(jīng)過幾代前端人的口口相傳,成為了名副其實(shí)的JavaScript權(quán)威指南! 本版已經(jīng)更新到涵蓋JavaScript的2020版。書中令人深思、富有啟發(fā)性的示例隨處可見。 這本“犀牛書”影響著每一位前端人,一直是幾十萬JavaScript程序員必讀的技術(shù)著作,在很多工程師心目中有著至高無上的地位。如果你由于種種原因錯(cuò)過了它之前的版本,那一定不要再錯(cuò)過這一版了!

O’Reilly精品圖書系列JavaScript權(quán)威指南(原書第7版) 內(nèi)容簡(jiǎn)介

本書介紹JavaScript語言和由瀏覽器與Node實(shí)現(xiàn)的JavaScript API。本書適合有一定編程經(jīng)驗(yàn)、想學(xué)習(xí)JavaScript讀者,也適合已經(jīng)在使用JavaScript但希望更深入地理解進(jìn)而真正掌握這門語言的程序員。 本書的目標(biāo)是全面地講解JavaScript語言,對(duì)JavaScript程序中可能用到的重要的客戶端API和服務(wù)器端API提供深入的介紹。本書篇幅較長(zhǎng),內(nèi)容很好詳盡,相信認(rèn)真研究本書的讀者都能獲益良多。

O’Reilly精品圖書系列JavaScript權(quán)威指南(原書第7版) 目錄

●第1章 JavaScript簡(jiǎn)介5

1.1 探索JavaScript7

1.2 Hello World8

1.3 JavaScript之旅9

1.4 示例:字符頻率柱形圖14

1.5 小結(jié)17

●第2章 詞法結(jié)構(gòu)18

2.1 JavaScript程序的文本18

2.2 注釋19

2.3 字面量19

2.4 標(biāo)識(shí)符和保留字19

2.5 Unicode20

2.6 可選的分號(hào)21

2.7 小結(jié)23

●第3章 類型、值和變量24

3.1 概述與定義24

3.2 數(shù)值26

3.3 文本32

3.4 布爾值38

3.5 null與undefined39

3.6 符號(hào)40

3.7 全局對(duì)象41

3.8 不可修改的原始值與可修改的對(duì)象引用42

3.9 類型轉(zhuǎn)換44

3.10 變量聲明與賦值51

3.11 小結(jié)58

●第4章 表達(dá)式與操作符59

4.1 主表達(dá)式59

4.2 對(duì)象和數(shù)組初始化程序60

4.3 函數(shù)定義表達(dá)式61

4.4 屬性訪問表達(dá)式62

4.5 調(diào)用表達(dá)式64

4.6 對(duì)象創(chuàng)建表達(dá)式65

4.7 操作符概述66

4.8 算術(shù)表達(dá)式70

4.9 關(guān)系表達(dá)式75

4.10 邏輯表達(dá)式79

4.11 賦值表達(dá)式82

4.12 求值表達(dá)式83

4.13 其他操作符86

4.14 小結(jié)91

●第5章 語句92

5.1 表達(dá)式語句93

5.2 復(fù)合語句與空語句93

5.3 條件語句94

5.4 循環(huán)語句99

5.5 跳轉(zhuǎn)語句106

5.6 其他語句113

5.7 聲明117

5.8 小結(jié)119

●第6章 對(duì)象120

6.1 對(duì)象簡(jiǎn)介120

6.2 創(chuàng)建對(duì)象121

6.3 查詢和設(shè)置屬性124

6.4 刪除屬性128

6.5 測(cè)試屬性129

6.6 枚舉屬性130

6.7 擴(kuò)展對(duì)象131

6.8 序列化對(duì)象133

6.9 對(duì)象方法133

6.10 對(duì)象字面量擴(kuò)展語法135

6.11 小結(jié)141

●第7章 數(shù)組143

7.1 創(chuàng)建數(shù)組144

7.2 讀寫數(shù)組元素146

7.3 稀疏數(shù)組148

7.4 數(shù)組長(zhǎng)度148

7.5 添加和刪除數(shù)組元素149

7.6 迭代數(shù)組150

7.7 多維數(shù)組151

7.8 數(shù)組方法152

7.9 類數(shù)組對(duì)象163

7.10 作為數(shù)組的字符串165

7.11 小結(jié)166

●第8章 函數(shù)167

8.1 定義函數(shù)167

8.2 調(diào)用函數(shù)172

8.3 函數(shù)實(shí)參與形參177

8.4 函數(shù)作為值184

8.5 函數(shù)作為命名空間187

8.6 閉包188

8.7 函數(shù)屬性、方法與構(gòu)造函數(shù)192

8.8 函數(shù)式編程196

8.9 小結(jié)201

●第9章 類202

9.1 類和原型203

9.2 類和構(gòu)造函數(shù)204

9.3 使用class關(guān)鍵字的類209

9.4 為已有類添加方法215

9.5 子類216

9.6 小結(jié)226

●第10章 模塊227

10.1 基于類、對(duì)象和閉包的模塊227

10.2 Node中的模塊230

10.3 ES6中的模塊232

10.4 小結(jié)242

●第11章 JavaScript標(biāo)準(zhǔn)庫243

11.1 集合與映射244

11.2 定型數(shù)組與二進(jìn)制數(shù)據(jù)249

11.3 正則表達(dá)式與模式匹配255

11.4 日期與時(shí)間273

11.5 Error類276

11.6 JSON序列化與解析277

11.7 國(guó)際化API280

11.8 控制臺(tái)API287

11.9 URL API290

11.10 計(jì)時(shí)器293

11.11 小結(jié)294

●第12章 迭代器與生成器295

12.1 迭代器原理296

12.2 實(shí)現(xiàn)可迭代對(duì)象296

12.3 生成器300

12.4 高級(jí)生成器特性303

12.5 小結(jié)306

●第13章 異步JavaScript307

13.1 使用回調(diào)的異步編程307

13.2 期約(Promise)311

13.3 async和await330

13.4 異步迭代332

13.5 小結(jié)338

●第14章 元編程340

14.1 屬性的特性340

14.2 對(duì)象的可擴(kuò)展能力345

14.3 prototype特性346

14.4 公認(rèn)符號(hào)347

14.5 模板標(biāo)簽354

14.6 反射API356

14.7 代理對(duì)象359

14.8 小結(jié)365

●第15章 瀏覽器中的JavaScript367

15.1 Web編程基礎(chǔ)369

15.2 事件382

15.3 操作DOM391

15.4 操作CSS406

15.5 文檔幾何與滾動(dòng)412

15.6 Web組件416

15.7 可伸縮矢量圖形427

15.8 與圖形434

15.9 Audio API453

15.10 位置、導(dǎo)航與歷史455

15.11 網(wǎng)絡(luò)463

15.12 存儲(chǔ)479

15.13 工作線程與消息傳遞490

15.14 示例:曼德布洛特集合496

15.15 小結(jié)及未來閱讀建議508

●第16章 Node服務(wù)器端JavaScript515

16.1 Node編程基礎(chǔ)516

16.2 Node默認(rèn)異步520

16.3 緩沖區(qū)523

16.4 事件與EventEmitter525

16.5 流526

16.6 進(jìn)程、CPU和操作系統(tǒng)細(xì)節(jié)536

16.7 操作文件537

16.8 HTTP客戶端與服務(wù)器547

16.9 非HTTP網(wǎng)絡(luò)服務(wù)器及客戶端551

16.10 操作子進(jìn)程554

16.11 工作線程558

16.12 小結(jié)566

●第17章 JavaScript工具和擴(kuò)展568

17.1 使用ESLint檢查代碼569

17.2 使用Prettier格式化代碼570

17.3 使用Jest做單元測(cè)試570

17.4 使用npm管理依賴包573

17.5 代碼打包574

17.6 使用Babel轉(zhuǎn)譯576

17.7 JSX:JavaScript中的標(biāo)記表達(dá)式577

17.8 使用Flow檢查類型581

17.9 小結(jié)595


展開全部

O’Reilly精品圖書系列JavaScript權(quán)威指南(原書第7版) 節(jié)選

  第1章 JavaScript簡(jiǎn)介 JavaScript是Web編程語言。絕大多數(shù)網(wǎng)站都使用JavaScript,所有現(xiàn)代Web瀏覽器(無論是桌面、平板還是手機(jī)瀏覽器,書中以后統(tǒng)稱為瀏覽器)都包含JavaScript解釋器,這讓JavaScript成為有史以來部署*廣泛的編程語言。過去十年,Node.js讓瀏覽器之外的JavaScript編程成為可能,Node的巨大成功意味著JavaScript如今也是軟件開發(fā)者*常用的編程語言。無論你是從頭開始,還是已經(jīng)在工作中使用JavaScript,本書都能幫你掌握這門語言。 如果你已經(jīng)熟悉其他編程語言,那有必要知道JavaScript是一門高級(jí)、動(dòng)態(tài)、解釋型編程語言,非常適合面向?qū)ο蠛秃瘮?shù)式編程風(fēng)格。JavaScript的變量是無類型的,它的語法大致與Java相仿,但除此之外這兩門語言之間沒有任何關(guān)系。JavaScript從Scheme借鑒了一類(first class)函數(shù),從不太知名的Self借鑒了基于原型的繼承。但要閱讀本書或?qū)W習(xí)JavaScript不需要了解這些語言,也不必熟悉這些術(shù)語。 JavaScript這個(gè)名字相當(dāng)有誤導(dǎo)性。除了表面上語法相似,它與Java是完全不同的兩門編程語言。JavaScript經(jīng)歷了很長(zhǎng)時(shí)間才從一門腳本語言成長(zhǎng)為一門健壯高效的通用語言,適合開發(fā)代碼量巨大的重要軟件工程和項(xiàng)目。 JavaScript:名字、版本和模式 JavaScript是Netscape在Web誕生初期創(chuàng)造的。嚴(yán)格來講,JavaScript是經(jīng)Sun Microsystems(現(xiàn)Oracle)授權(quán)使用的一個(gè)注冊(cè)商標(biāo),用于描述Netscape(現(xiàn)Mozilla)對(duì)這門語言的實(shí)現(xiàn)。Netscape將這門語言提交給Ecma International譯注1進(jìn) 行標(biāo)準(zhǔn)化,由于商標(biāo)問題,這門語言的標(biāo)準(zhǔn)版本沿用了別扭的名字“ECMAScript”。實(shí)踐中,大家仍然稱這門語言為JavaScript。本書在討論這門語言的標(biāo)準(zhǔn)及版本時(shí)使用“ECMAScript”及其縮寫“ES”。 2010年以來,幾乎所有瀏覽器都支持ECMAScript標(biāo)準(zhǔn)第5版。本書以ES5作為兼容性基準(zhǔn),不再討論這門語言的更早版本。ES6發(fā)布于2015年,增加了重要的新特性(包括類和模塊語法)。這些新特性把JavaScript從一門腳本語言轉(zhuǎn)變?yōu)橐婚T適合大規(guī)模軟件工程的嚴(yán)肅、通用語言。從ES6開始,ECMAScript規(guī)范改為每年發(fā)布一次,語言的版本也以發(fā)布的年份來標(biāo)識(shí)(ES2016、ES2017、ES2018、ES2019和ES2020)。 隨著JavaScript的發(fā)展,語言設(shè)計(jì)者也在嘗試糾正早期(ES5之前)版本中的缺陷。為了保證向后兼容,無論一個(gè)特性的問題有多嚴(yán)重,也不能把它刪除。但在ES5及之后,程序可以選擇切換到JavaScript的嚴(yán)格模式。在這種模式下,一些早期的語言錯(cuò)誤會(huì)得到糾正。本書5.6.3節(jié)將介紹切換到這種模式使用的use strict指令。該節(jié)也會(huì)總結(jié)傳統(tǒng)JavaScript與嚴(yán)格JavaScript的區(qū)別。在ES6及之后,使用新語言特性經(jīng)常會(huì)隱式觸發(fā)嚴(yán)格模式。例如,如果使用ES6的class關(guān)鍵字或者創(chuàng)建ES6模塊,類和模塊中的所有代碼都會(huì)自動(dòng)切換到嚴(yán)格模式。在這些上下文中,不能使用老舊、有缺陷的特性。本書會(huì)介紹JavaScript的傳統(tǒng)特性,但會(huì)細(xì)心地指出它們?cè)趪?yán)格模式下無法使用。 為了好用,每種語言都必須有一個(gè)平臺(tái)或標(biāo)準(zhǔn)庫,用于執(zhí)行包括基本輸入和輸出在內(nèi)的基本操作。核心JavaScript語言定義了*小限度的API,可以操作數(shù)值、文本、數(shù)組、集合、映射等,但不包含任何輸入和輸出功能。輸入和輸出(以及更復(fù)雜的特性,如聯(lián)網(wǎng)、存儲(chǔ)和圖形處理)是內(nèi)嵌JavaScript的“宿主環(huán)境”的責(zé)任。 瀏覽器是JavaScript*早的宿主環(huán)境,也是JavaScript代碼*常見的運(yùn)行環(huán)境。瀏覽器環(huán)境允許JavaScript代碼從用戶的鼠標(biāo)和鍵盤或者通過發(fā)送HTTP請(qǐng)求獲取輸入,也允許JavaScript代碼通過HTML和CSS向用戶顯示輸出。 2010年以后,JavaScript代碼又有了另一個(gè)宿主環(huán)境。與限制JavaScript只能使用瀏覽器提供的API不同,Node給予了JavaScript訪問整個(gè)操作系統(tǒng)的權(quán)限,允許JavaScript程序讀寫文件、通過網(wǎng)絡(luò)發(fā)送和接收數(shù)據(jù),以及發(fā)送和處理HTTP請(qǐng)求。Node是實(shí)現(xiàn)Web服務(wù)器的一種流行方式,也是編寫可以替代shell腳本的簡(jiǎn)單實(shí)用腳本的便捷工具。 本書大部分內(nèi)容聚焦JavaScript語言本身。第11章講述JavaScript標(biāo)準(zhǔn)庫,第15章介紹瀏覽器宿主環(huán)境,第16章介紹Node宿主環(huán)境。 全書首先從底層基礎(chǔ)講起,然后逐步過渡到高級(jí)及更高層次的抽象。這些章節(jié)的安排多多少少考慮了閱讀的先后次序。不過學(xué)習(xí)一門新語言不可能是一個(gè)線性的過程,對(duì)一門語言的描述也不可能是線性的。畢竟每個(gè)語言特性都可能與其他特性有關(guān)系。本書的交叉引用非常多,有的指向前面的章節(jié),有的指向后面的章節(jié)。本章會(huì)先快速地過一遍這門語言,介紹一些對(duì)理解后續(xù)章節(jié)的深入剖析有幫助的關(guān)鍵特性。如果你是一名JavaScript程序員,可以跳過這一章(但在跳過之前,讀一讀本章末尾的示例1-1應(yīng)該會(huì)讓你很開心)。 1.1 探索JavaScript 學(xué)習(xí)一門新編程語言,很重要的是嘗試書中的示例,然后修改這些示例并再次運(yùn)行,以驗(yàn)證自己對(duì)這門語言的理解。為此,你需要一個(gè)JavaScript解釋器。 要嘗試少量JavaScript代碼,*簡(jiǎn)單的方式就是打開瀏覽器的Web開發(fā)者工具(按F12、Ctrl+Shift+I或Command+Option+I),然后選擇Console(控制臺(tái))標(biāo)簽頁。之后就可以在提示符后面輸入代碼,并在輸入的同時(shí)看到結(jié)果。瀏覽器開發(fā)者工具經(jīng)常以一組面板的形式出現(xiàn)在瀏覽器窗口底部或右側(cè),不過也可以把它們拆分為獨(dú)立的窗口(如圖1-1所示),這樣通常更加方便。 圖1-1:Firefox開發(fā)者工具中的JavaScript控制臺(tái) 嘗試JavaScript代碼的另一種方式是下載并安裝Node(下載地址https://nodejs.org/)。安裝完Node之后,可以打開終端窗口,然后輸入node并回車,像下面這樣開始交互式JavaScript會(huì)話: 1.2 Hello World 當(dāng)需要試驗(yàn)更長(zhǎng)的代碼塊時(shí),這種以行為單位的交互環(huán)境可能就不合適了。此時(shí)可能需要使用一個(gè)文本編輯器來編寫代碼。寫完之后,可以把JavaScript代碼復(fù)制粘貼到JavaScript控制臺(tái)或Node會(huì)話;蛘,可以把代碼保存成一個(gè)文件(保存JavaScript代碼的文件通常使用擴(kuò)展名.js),再使用Node來運(yùn)行這個(gè)JavaScript代碼文件: 如果像這樣在非交互模式下使用Node,那它不會(huì)自動(dòng)打印所有運(yùn)行的代碼的值,因此你需要自己打印。可以使用console.log()函數(shù)在終端窗口或在瀏覽器開發(fā)者工具的控制臺(tái)中顯示文本和其他JavaScript值。例如,如果你創(chuàng)建一個(gè)hello.js文件,其中包含這行代碼: 并使用node hello.js來執(zhí)行這個(gè)文件,可以看到打印出的消息“Hello World!”。 如果你想在瀏覽器的JavaScript控制臺(tái)看到同樣的消息,則需要?jiǎng)?chuàng)建一個(gè)新文件,例如叫hello.html,然后把以下內(nèi)容放進(jìn)去: 然后像下面這樣在瀏覽器中使用file://URL加載hello.html: 打開開發(fā)者工具窗口,就可以在控制臺(tái)中看到這個(gè)問候了。 1.3 JavaScript之旅 本節(jié)通過代碼示例對(duì)JavaScript語言做一個(gè)簡(jiǎn)單介紹。在本章之后,我們會(huì)深入JavaScript的*底層。第2章將解釋JavaScript注釋、分號(hào)和Unicode字符集。第3章會(huì)更有意思一些,將解釋JavaScript變量以及可以賦給這些變量的值。 下面我們來看一些例子,其中包含了第2章和第3章的重點(diǎn)內(nèi)容。 JavaScript程序可以操作的另外兩個(gè)非常重要的類型是對(duì)象和數(shù)組,分別將在第6章和第7章中介紹。不過,因?yàn)樗鼈儗?shí)在太重要了,所以在那兩章之前你也會(huì)多次看到它們。 代碼示例中的注釋語法 你可能注意到了,前面代碼中有的注釋是以箭頭(=>)開頭的。這些箭頭是在模擬交互式JavaScript環(huán)境(例如瀏覽器控制臺(tái)),在紙質(zhì)書上展示注釋前面的代碼產(chǎn)生的值。 // =>注釋也充當(dāng)一種斷言,我曾寫過一個(gè)工具,專門測(cè)試代碼并驗(yàn)證它能產(chǎn)生這種注釋中指定的值。這應(yīng)該(我希望)可以減少本書代碼的錯(cuò)誤。 有兩種相關(guān)的注釋/斷言風(fēng)格。如果你看到// a == 42形式的注釋,那意味著在注釋前面的代碼運(yùn)行之后,變量a的值將是42。如果你看到// !形式的注釋,那意味著注釋前面的代碼拋出了異常(而注釋中!后面的內(nèi)容通常會(huì)解釋拋出的是什么異常)。 這樣的注釋在本書中隨處可見。 這里展示的在中括號(hào)內(nèi)羅列出數(shù)組元素以及在大括號(hào)中將對(duì)象屬性名映射為屬性值的語法被稱為初始化表達(dá)式(initializer expression),也是第4章的一個(gè)主題。表達(dá)式在JavaScript中就是一個(gè)短語,可以求值產(chǎn)生一個(gè)值。例如,使用.或[]引用對(duì)象屬性的值或數(shù)組元素就是表達(dá)式。 JavaScript構(gòu)造表達(dá)式的一個(gè)*常見方式是使用操作符: 如果JavaScript表達(dá)式像短語,那JavaScript語句就像完整的句子。語句是第5章的主題。簡(jiǎn)單地說,表達(dá)式只用于計(jì)算值,什么也不做,即不以任何方式改變程序的狀態(tài)。而語句沒有值,但卻會(huì)改變狀態(tài)。前面我們已經(jīng)看到了變量聲明和賦值語句。另外還有一類語句叫控制結(jié)構(gòu),例如條件和循環(huán)。在介紹完函數(shù)之后,我們會(huì)看到它們的示例。 函數(shù)是一個(gè)有名字、有參數(shù)的JavaScript代碼塊,只要定義一次就可以反復(fù)調(diào)用。第8章會(huì)正式介紹函數(shù),但在之前你也會(huì)多次看到它們,就像對(duì)象和數(shù)組一樣。下面是幾個(gè)簡(jiǎn)單的示例: ES6及之后,有一種定義函數(shù)的簡(jiǎn)寫方式。這種簡(jiǎn)潔的語法使用=>來分隔參數(shù)列表和函數(shù)體,因此以這種方式定義的函數(shù)被稱為箭頭函數(shù)。箭頭函數(shù)經(jīng)常用于把一個(gè)未命名函數(shù)作為參數(shù)傳給另一個(gè)函數(shù)。前面的函數(shù)用箭頭函數(shù)重寫后如下所示: 在通過對(duì)象使用函數(shù)時(shí),我們稱其為方法: 現(xiàn)在,按照約定,我們?cè)俳榻B幾個(gè)函數(shù),它們的函數(shù)體演示了常用的JavaScript控制結(jié)構(gòu)語句: JavaScript支持面向?qū)ο蟮木幊田L(fēng)格,但與“經(jīng)典的”面向?qū)ο缶幊陶Z言非常不一樣。第9章將詳細(xì)介紹JavaScript中的面向?qū)ο缶幊,包含很多示例。下面是一個(gè)非常簡(jiǎn)單的示例,演示了如何定義一個(gè)JavaScript類以表示幾何平面上的一個(gè)點(diǎn)。作為這個(gè)類的實(shí)例的對(duì)象有一個(gè)方法,叫作distance(),用于計(jì)算該點(diǎn)與原點(diǎn)的距離: 對(duì)JavaScript基礎(chǔ)語法和能力的介紹之旅到此就要結(jié)束了。但本書后續(xù)還有很多章,分別自成一體地介紹了這門語言的其他特性。 第10章 模塊 展示文件或腳本中的JavaScript代碼如何使用其他文件和腳本中定義的JavaScript函數(shù)和類。 第11章 JavaScript標(biāo)準(zhǔn)庫 展示所有JavaScript程序都可以使用的內(nèi)置函數(shù)和類,包括像映射、集合這樣重要的數(shù)據(jù)結(jié)構(gòu),還有用于文本模式匹配的正則表達(dá)式類,以及序列化JavaScript數(shù)據(jù)結(jié)構(gòu)的函數(shù),等等。 第12章 迭代器與生成器 解釋for/of循環(huán)的原理,以及如何定義可以在for/of中使用的類。該章還介紹生成器函數(shù)及yield語句。 第13章 異步JavaScript 該章深入探討JavaScript的異步編程,涵蓋回調(diào)與事件、基于期約的API,以及async和await關(guān)鍵字。雖然核心JavaScript語言并非異步的,但瀏覽器和Node中的API默認(rèn)都是異步的。該章解釋使用這些API的技術(shù)。 第14章 元編程 介紹一些高級(jí)JavaScript特性,為其他JavaScript程序員編寫代碼庫的讀者可能會(huì)感興趣。 第15章 瀏覽器中的JavaScript 介紹瀏覽器宿主環(huán)境,解釋瀏覽器如何執(zhí)行JavaScript代碼,涵蓋瀏覽器定義的大多數(shù)重要API。該章是迄今為止這本書中*長(zhǎng)的一章。 第16章 Node服務(wù)器端JavaScript 介紹Node宿主環(huán)境,涵蓋基礎(chǔ)編程模型、數(shù)據(jù)結(jié)構(gòu)和需要理解的*重要的API。 第17章 JavaScript工具和擴(kuò)展 涵蓋廣泛應(yīng)用并有效提升開發(fā)者效率的工具及語言擴(kuò)展。 1.4 示例:字符頻率柱形圖 本章*后展示一個(gè)雖短但并不簡(jiǎn)單的JavaScript程序。示例1-1是一個(gè)Node程序,它從標(biāo)準(zhǔn)輸入讀取文本,計(jì)算該文本的字符頻率柱形圖,然后打印出來。可以像下面這樣調(diào)用這個(gè)程序,分析它自己源代碼的字符頻率: 這個(gè)示例使用了一些高級(jí)JavaScript特性,有意讓大家看看真正的JavaScript程序長(zhǎng)什么樣。不過,即使你不理解這些代碼也沒關(guān)系,其中用到的特性本書后續(xù)章節(jié)都會(huì)介紹。 示例1-1:使用JavaScript計(jì)算字符頻率柱形圖 1.5 小結(jié) 本書以自底向上的方式解釋JavaScript。這意味著要先從較低層次的注釋、標(biāo)識(shí)符、變量和類型講起,然后在此基礎(chǔ)上介紹表達(dá)式、語句、對(duì)象和函數(shù)。接著介紹更高層次的語言抽象,例如類和模塊。本書的書名包含“權(quán)威”二字是認(rèn)真的,接下來的章節(jié)對(duì)這門語言的解釋可能詳細(xì)得令人反感。然而,想要真正掌握J(rèn)avaScript必須理解這些細(xì)節(jié),希望你能花時(shí)間從頭到尾讀完這本書。不過,不要一上來就想著這樣做。假如某一節(jié)內(nèi)容你怎么也看不懂,可以先跳過去。等你對(duì)這門語言有了一個(gè)整體的了解時(shí),可以再回來了解那些細(xì)節(jié)。

O’Reilly精品圖書系列JavaScript權(quán)威指南(原書第7版) 作者簡(jiǎn)介

David Flanagan從1995起就開始使用JavaScript并寫作本書的第1版。他擁有麻省理工學(xué)院計(jì)算機(jī)科學(xué)與工程學(xué)位,目前是VMware的一名軟件工程師。

商品評(píng)論(0條)
暫無評(píng)論……
書友推薦
本類暢銷
返回頂部
中圖網(wǎng)
在線客服
主站蜘蛛池模板: 沥青灌缝机_路面灌缝机_道路灌缝机_沥青灌缝机厂家_济宁萨奥机械有限公司 | 螺旋绞龙叶片,螺旋输送机厂家,山东螺旋输送机-淄博长江机械制造有限公司 | 粉末包装机,拆包机厂家,价格-上海强牛包装机械设备有限公司 | atcc网站,sigma试剂价格,肿瘤细胞现货,人结肠癌细胞株购买-南京科佰生物 | TYPE-C厂家|TYPE-C接口|TYPE-C防水母座|TYPE-C贴片-深圳步步精 | 耐破强度测试仪-纸箱破裂强度试验机-济南三泉中石单品站 | Q361F全焊接球阀,200X减压稳压阀,ZJHP气动单座调节阀-上海戎钛 | 南京兰江泵业有限公司-水解酸化池潜水搅拌机-絮凝反应池搅拌机-好氧区潜水推进器 | 样品瓶(色谱样品瓶)百科-浙江哈迈科技有限公司 | ERP企业管理系统永久免费版_在线ERP系统_OA办公_云版软件官网 | 亿立分板机_曲线_锯片式_走刀_在线式全自动_铣刀_在线V槽分板机-杭州亿协智能装备有限公司 | 伟秀电气有限公司-10kv高低压开关柜-高低压配电柜-中置柜-充气柜-欧式箱变-高压真空断路器厂家 | 上海瑶恒实业有限公司|消防泵泵|离心泵|官网 | 拖鞋定制厂家-品牌拖鞋代加工厂-振扬实业中国高端拖鞋大型制造商 | DNA亲子鉴定_DNA基因检测中心官方预约平台-严选好基因网 | 芝麻黑-芝麻黑石材厂家-永峰石业| 胶水,胶粘剂,AB胶,环氧胶,UV胶水,高温胶,快干胶,密封胶,结构胶,电子胶,厌氧胶,高温胶水,电子胶水-东莞聚力-聚厉胶粘 | 不锈钢复合板厂家_钛钢复合板批发_铜铝复合板供应-威海泓方金属复合材料股份有限公司 | 在线钠离子分析仪-硅酸根离子浓度测定仪-油液水分测定仪价格-北京时代新维测控设备有限公司 | 南京PVC快速门厂家南京快速卷帘门_南京pvc快速门_世界500强企业国内供应商_南京美高门业 | H型钢切割机,相贯线切割机,数控钻床,数控平面钻,钢结构设备,槽钢切割机,角钢切割机,翻转机,拼焊矫一体机 | 安徽控制器-合肥船用空调控制器-合肥家电控制器-合肥迅驰电子厂 安徽净化板_合肥岩棉板厂家_玻镁板厂家_安徽科艺美洁净科技有限公司 | 高柔性拖链电缆-聚氨酯卷筒电缆-柔性屏蔽电缆厂家-玖泰电缆 | 齿轮减速机电机一体机_齿轮减速箱加电机一体化-德国BOSERL蜗轮蜗杆减速机电机生产厂家 | 高低温试验房-深圳高低温湿热箱-小型高低温冲击试验箱-爱佩试验设备 | 台湾HIWIN上银直线模组|导轨滑块|TBI滚珠丝杆丝杠-深圳汉工 | 山东成考网-山东成人高考网 | 蒸压釜-陶粒板隔墙板蒸压釜-山东鑫泰鑫智能装备有限公司 | 智慧消防-消防物联网系统云平台 智能化的检漏仪_气密性测试仪_流量测试仪_流阻阻力测试仪_呼吸管快速检漏仪_连接器防水测试仪_车载镜头测试仪_奥图自动化科技 | 防火门|抗爆门|超大门|医疗门|隔声门-上海加汇门业生产厂家 | 包头市鑫枫装饰有限公司| 油罐车_加油机_加油卷盘_加油机卷盘_罐车人孔盖_各类球阀_海底阀等车用配件厂家-湖北华特专用设备有限公司 | 澳洁干洗店加盟-洗衣店干洗连锁「澳洁干洗免费一对一贴心服务」 干洗加盟网-洗衣店品牌排行-干洗设备价格-干洗连锁加盟指南 | 净气型药品柜-试剂柜-无管道净气型通风柜-苏州毕恩思 | 桑茶-七彩贝壳桑叶茶 长寿茶| 便携式高压氧舱-微压氧舱-核生化洗消系统-公众洗消站-洗消帐篷-北京利盟救援 | CTAB,表面活性剂1631溴型(十六烷基三甲基溴化铵)-上海升纬化工原料有限公司 | 直读光谱仪,光谱分析仪,手持式光谱仪,碳硫分析仪,创想仪器官网 | 菏泽知彼网络科技有限公司| 旅游规划_旅游策划_乡村旅游规划_景区规划设计_旅游规划设计公司-北京绿道联合旅游规划设计有限公司 | 南京雕塑制作厂家-不锈钢雕塑制作-玻璃钢雕塑制作-先登雕塑厂 |