javascript編程全解是一本JavaScript語言的使用指導手冊,由日本程序員井上誠一郎、土江拓郎和濱邊將太三人共同編著。本書涵蓋了JavaScript開發(fā)中各個方面的主題,對從客戶端及服務端JavaScript等基礎內(nèi)容,到HTML5、Web API、Node.js與WebSocket等熱門技術,都作了深入淺出的介紹與說明。javascript編程全解內(nèi)容豐富翔實,其最大的特色就是對javascript語言的語法規(guī)則進行了細致的說明,并通過大量純正的javascript風格代碼,幫助讀者準確地掌握javascript的語言特性及細節(jié)說明,非常適合所有有經(jīng)驗的JavaScript開發(fā)人員下載閱讀。
內(nèi)容介紹
《JavaScript編程全解》全方位地介紹了JavaScript開發(fā)中的各個主題,無論是前端還是后端的JavaScript開發(fā)者都可以在本書中找到自己需要的內(nèi)容。本書對HTML5、Web API、Node.js及WebSocket等的熱門技術也作了深入淺出的介紹,并提供了大量實際應用范例。
《JavaScript編程全解》語法說明系統(tǒng)深入、示例代碼規(guī)范詳細,對容易產(chǎn)生問題之處均做了重點說明,不僅適合初學者入門,而且有經(jīng)驗的JavaScript開發(fā)人員、項目負責人也能從中受益。
javascript編程全解章節(jié)目錄
第1部分 JavaScript概要 第1章 JavaScript概要 1.1 JavaScript概要 1.2 JavaScript的歷史 1.3 ECMAScript 1.3.1 JavaScript的標準化 1.3.2 被放棄的ECMAScript第4版 1.4 JavaScript的版本 1.5 JavaScript實現(xiàn)方式 1.6 JavaScript運行環(huán)境 1.6.1 核心語言 1.6.2 宿主對象 1.7 JavaScript相關環(huán)境 1.7.1 庫 1.7.2 源代碼壓縮 1.7.3 集成開發(fā)環(huán)境 第2部分 JavaScript的語言基礎 第2章 JavaScript基礎 2.1 JavaScript的特點 2.2 關于編排格式 2.3 變量的基礎 2.3.1 變量的使用方法 2.3.2 省略var 2.3.3 常量 2.4 函數(shù)基礎 2.4.1 函數(shù)的定義 2.4.2 函數(shù)的聲明與調(diào)用 2.4.3 匿名函數(shù) 2.4.4 函數(shù)是一種對象 2.5 對象的基礎 2.5.1 對象的定義 2.5.2 對象字面量表達式與對象的使用 2.5.3 屬性訪問 2.5.4 屬性訪問(括號方式) 2.5.5 方法 2.5.6 new表達式 2.5.7 類與實例 2.5.8 對類的功能的整理 2.5.9 對象與類型 2.6 數(shù)組的基礎 第3章 JavaScript的數(shù)據(jù)類型 3.1 數(shù)據(jù)類型的定義 3.1.1 在數(shù)據(jù)類型方面與Java作比較 3.1.2 基本數(shù)據(jù)類型和引用類型 3.2 內(nèi)建數(shù)據(jù)類型概要 3.3 字符串型 3.3.1 字符串字面量 3.3.2 字符串型的運算 3.3.3 字符串型的比較 3.3.4 字符串類(String類) 3.3.5 字符串對象 3.3.6 避免混用字符串值和字符串對象 3.3.7 調(diào)用String函數(shù) 3.3.8 String類的功能 3.3.9 非破壞性的方法 3.4 數(shù)值型 3.4.1 數(shù)值字面量 3.4.2 數(shù)值型的運算 3.4.3 有關浮點數(shù)的常見注意事項 3.4.4 數(shù)值類(Number類) 3.4.5 調(diào)用Number函數(shù) 3.4.6 Number類的功能 3.4.7 邊界值與特殊數(shù)值 3.4.8 NaN 3.5 布爾型 3.5.1 布爾值 3.5.2 布爾類(Boolean類) 3.5.3 Boolean類的功能 3.6 null型 3.7 undefined型 3.8 Object類型 3.9 數(shù)據(jù)類型轉換 3.9.1 從字符串值轉換為數(shù)值 3.9.2 從數(shù)值轉換為字符串值 3.9.3 數(shù)據(jù)類型轉換的慣用方法 3.9.4 轉換為布爾型 3.9.5 其他的數(shù)據(jù)類型轉換 3.9.6 從Object類型轉換為基本數(shù)據(jù)類型 3.9.7 從基本數(shù)據(jù)類型轉換為Object類型 第4章 語句、表達式和運算符 4.1 表達式和語句的構成 4.2 保留字 4.3 標識符 4.4 字面量 4.5 語句 4.6 代碼塊(復合語句) 4.7 變量聲明語句 4.8 函數(shù)聲明語句 4.9 表達式語句 4.10 空語句 4.11 控制語句 4.12 if-else語句 4.13 switch-case語句 4.14 循環(huán)語句 4.15 while語句 4.16 do-while語句 4.17 for語句 4.18 for in語句 4.18.1 數(shù)列與for in語句 4.18.2 在使用for in語句時需要注意的地方 4.19 for each in語句 4.20 break語句 4.21 continue語句 4.22 通過標簽跳轉 4.23 return語句 4.24 異常 4.25 其他 4.26 注釋 4.27 表達式 4.28 運算符 4.29 表達式求值 4.30 運算符的優(yōu)先級以及結合律 4.31 算術運算符 4.32 字符串連接運算符 4.33 相等運算符 4.34 比較運算符 4.35 in運算符 4.36 instanceof運算符 4.37 邏輯運算符 4.38 位運算符 4.39 賦值運算符 4.40 算術賦值運算符 4.41 條件運算符(三目運算符) 4.42 typeof運算符 4.43 new運算符 4.44 delete運算符 4.45 void運算符 4.46 逗號(,)運算符 4.47 點運算符和中括號運算符 4.48 函數(shù)調(diào)用運算符 4.49 運算符使用以及數(shù)據(jù)類型轉換中需要注意的地方 第5章 變量與對象 5.1 變量的聲明 5.2 變量與引用 5.2.1 函數(shù)的參數(shù)(值的傳遞) 5.2.2 字符串與引用 5.2.3 對象與引用相關的術語總結 5.3 變量與屬性 5.4 變量的查找 5.5 對變量是否存在的檢驗 5.6 對象的定義 5.6.1 抽象數(shù)據(jù)類型與面向對象 5.6.2 實例間的協(xié)作關系與面向對象 5.6.3 JavaScript的對象 5.7 對象的生成 5.7.1 對象字面量 5.7.2 構造函數(shù)與new表達式 5.7.3 構造函數(shù)與類的定義 5.8 屬性的訪問 5.8.1 屬性值的更新 5.8.2 點運算符與中括號運算符在使用上的區(qū)別 5.8.3 屬性的枚舉 5.9 作為關聯(lián)數(shù)組的對象 5.9.1 關聯(lián)數(shù)組 5.9.2 作為關聯(lián)數(shù)組的對象的注意點 5.10 屬性的屬性 5.11 垃圾回收 5.12 不可變對象 5.12.1 不可變對象的定義 5.12.2 不可變對象的作用 5.12.3 實現(xiàn)不可變對象的方式 5.13 方法 5.14 this引用 5.14.1 this引用的規(guī)則 5.14.2 this引用的注意點 5.15 apply與call 5.16 原型繼承 5.16.1 原型鏈 5.16.2 原型鏈的具體示例 5.16.3 原型繼承與類 5.16.4 對于原型鏈的常見誤解以及_proto_屬性 5.16.5 原型對象 5.16.6 ECMAScript第5版與原型對象 5.17 對象與數(shù)據(jù)類型 5.17.1 數(shù)據(jù)類型判定(constructor屬性) 5.17.2 constructor屬性的注意點 5.17.3 數(shù)據(jù)類型判定(instance運算與isPrototypeOf方法) 5.17.4 數(shù)據(jù)類型判定(鴨子類型) 5.17.5 屬性的枚舉(原型繼承的相關問題) 5.18 ECMAScript第5版中的Object類 5.18.1 屬性對象 5.18.2 訪問器的屬性 5.19 標準對象 5.20 Object類 5.21 全局對象 5.21.1 全局對象與全局變量 5.21.2 Math對象 5.21.3 Error對象 第6章 函數(shù)與閉包 6.1 函數(shù)聲明語句與匿名函數(shù)表達式 6.2 函數(shù)調(diào)用的分類 6.3 參數(shù)與局部變量 6.3.1 arguments對象 6.3.2 遞歸函數(shù) 6.4 作用域 6.4.1 瀏覽器與作用域 6.4.2 塊級作用域 6.4.3 let與塊級作用域 6.4.4 嵌套函數(shù)與作用域 6.4.5 變量隱藏 6.5 函數(shù)是一種對象 6.6 Function類 6.7 嵌套函數(shù)聲明與閉包 6.7.1 對閉包的初步認識 6.7.2 閉包的原理 6.7.3 閉包中需要注意的地方 6.7.4 防范命名空間的污染 6.7.5 閉包與類 6.8 回調(diào)函數(shù)設計模式 6.8.1 回調(diào)函數(shù)與控制反轉 6.8.2 JavaScript與回調(diào)函數(shù) 第7章 數(shù)據(jù)處理 7.1 數(shù)組 7.1.1 JavaScript的數(shù)組 7.1.2 數(shù)組元素的訪問 7.1.3 數(shù)組的長度 7.1.4 數(shù)組元素的枚舉 7.1.5 多維數(shù)組 7.1.6 數(shù)組是一種對象 7.1.7 Array類 7.1.8 數(shù)組對象的意義 7.1.9 數(shù)組的習慣用法 7.1.10 數(shù)組的內(nèi)部實現(xiàn) 7.1.11 數(shù)組風格的對象 7.1.12 迭代器 7.1.13 生成器 7.1.14 數(shù)組的內(nèi)包 7.2 JSON 7.2.1 JSON字符串 7.2.2 JSON對象 7.3 日期處理 7.4 正則表達式 7.4.1 正則表達式的定義 7.4.2 正則表達式相關的術語 7.4.3 正則表達式的語法 7.4.4 JavaScript中的正則表達式 7.4.5 正則表達式程序設計 7.4.6 字符串對象與正則表達式對象 第3部分 客戶端JavaScript 第8章 客戶端JavaScript與HTML 8.1 客戶端JavaScript的重要性 8.1.1 Web應用程序的發(fā)展 8.1.2 JavaScript的性能提升 8.1.3 JavaScript的作用 8.2 HTML與JavaScript 8.2.1 網(wǎng)頁顯示過程中的處理流程 8.2.2 JavaScript的表述方式及其執(zhí)行流程 8.2.3 執(zhí)行流程的小結 8.3 運行環(huán)境與開發(fā)環(huán)境 8.3.1 運行環(huán)境 8.3.2 開發(fā)環(huán)境 8.4 調(diào)試 8.4.1 alert 8.4.2 console 8.4.3 onerror 8.4.4 Firebug, Web Inspector(Developer Tools), Opera Dragonfly 8.5 跨瀏覽器支持 8.5.1 應當提供支持的瀏覽器 8.5.2 實現(xiàn)方法 8.6 Window對象 8.6.1 Navigator對象 8.6.2 Location對象 8.6.3 History對象 8.6.4 Screen對象 8.6.5 對Window對象的引用 8.6.6 Document對象 第9章 DOM 9.1 DOM的定義 9.1.1 DOM Level 1 9.1.2 DOM Level 2 9.1.3 DOM Level 3 9.1.4 DOM的表述方式 9.2 DOM的基礎 9.2.1 標簽、元素、節(jié)點 9.2.2 DOM操作 9.2.3 Document對象 9.3 節(jié)點的選擇 9.3.1 通過ID檢索 9.3.2 通過標簽名檢索 9.3.3 通過名稱檢索 9.3.4 通過類名檢索 9.3.5 父節(jié)點、子節(jié)點、兄弟節(jié)點 9.3.6 XPath 9.3.7 Selector API 9.4 節(jié)點的創(chuàng)建與新增 9.5 節(jié)點的內(nèi)容更改 9.6 節(jié)點的刪除 9.7 innerHTML/textContent 9.7.1 innerHTML 9.7.2 textContent 9.8 DOM操作的性能 第10章 事件 10.1 事件驅動程序設計 10.2 事件處理程序/事件偵聽器的設定 10.2.1 指定為HTML元素的屬性 10.2.2 指定為DOM元素的屬性 10.2.3 通過EventTarget.addEventListener()進行指定 10.2.4 事件處理程序/事件偵聽器內(nèi)的this引用 10.3 事件的觸發(fā) 10.4 事件的傳播 10.4.1 捕獲階段 10.4.2 目標階段 10.4.3 事件冒泡階段 10.4.4 取消 10.5 事件所具有的元素 10.6 標準事件 10.6.1 DOM Level 2中所定義的事件 10.6.2 DOM Level 3中所定義的事件 10.7 自定義事件 第11章 客戶端JavaScript實踐 11.1 樣式 11.1.1 樣式的變更方法 11.1.2 位置的設定 11.1.3 位置 11.1.4 動畫 11.2 AJAX 11.2.1 異步處理的優(yōu)點 11.2.2 XMLHttpRequest 11.2.3 基本的處理流程 11.2.4 同步通信 11.2.5 超時 11.2.6 響應 11.2.7 跨源限制 11.2.8 跨源通信 11.2.9 JSONP 11.2.10 iframe攻擊(iframe hack) 11.2.11 window.postMessage 11.2.12 XMLHttpRequest Level 2 11.2.13 跨源通信的安全問題 11.3 表單 11.3.1 表單元素 11.3.2 表單控件 11.3.3 內(nèi)容驗證 11.3.4 可用于驗證的事件 11.3.5 使用表單而不產(chǎn)生頁面跳轉的方法 第12章 庫 12.1 使用庫的原因 12.2 jQuery的特征 12.3 jQuery的基本概念 12.3.1 使用實例 12.3.2 鏈式語法 12.4 $函數(shù) 12.4.1 抽取與選擇器相匹配的元素 12.4.2 創(chuàng)建新的DOM元素 12.4.3 將已有的DOM元素轉換為jQuery對象 12.4.4 對DOM構造完成后的事件偵聽器進行設定 12.5 通過jQuery進行DOM操作 12.5.1 元素的選擇 12.5.2 元素的創(chuàng)建·添加·替換·刪除 12.6 通過jQuery處理事件 12.6.1 事件偵聽器的注冊·刪除 12.6.2 事件專用的事件偵聽器注冊方法 12.6.3 ready()方法 12.7 通過jQuery對樣式進行操作 12.7.1 基本的樣式操作 12.7.2 動畫 12.8 通過jQuery進行AJAX操作 12.8.1 AJAX()函數(shù) 12.8.2 AJAX()的包裝函數(shù) 12.8.3 全局事件 12.9 Deferred 12.9.1 Deferred的基本概念 12.9.2 狀態(tài)遷移 12.9.3 后續(xù)函數(shù) 12.9.4 并行處理 12.10 jQuery插件 12.10.1 使用jQuery插件 12.10.2 創(chuàng)建jQuery插件 12.11 與其他庫共同使用 12.11.1 $對象的沖突 12.11.2 避免$對象的沖突 12.12 庫的使用方法 第4部分 HTML5 第13章 HTML5概要 13.1 HTML5的歷史 13.2 HTML5的現(xiàn)狀 13.2.1 瀏覽器的支持情況 13.2.2 Web應用程序與原生應用程序 13.3 HTML5的概要 第14章 Web應用程序 14.1 History API 14.1.1 History API的定義 14.1.2 哈希片段 14.1.3 接口 14.2 ApplicationCache 14.2.1 關于緩存管理 14.2.2 緩存清單文件 14.2.3 ApplicationCache API 14.2.4 在線與離線 第15章 與桌面應用的協(xié)作 15.1 Drag Drop API 15.1.1 Drag Drop API的定義 15.1.2 接口 15.1.3 基本的拖動與釋放 15.1.4 自定義顯示 15.1.5 文件的Drag-In/Drag-Out 15.2 File API 15.2.1 File API的定義 15.2.2 File對象 15.2.3 FileReader 15.2.4 data URL 15.2.5 FileReaderSync 第16章 存儲 16.1 Web Storage 16.1.1 Web Storage的定義 16.1.2 基本操作 16.1.3 storage事件 16.1.4 關于Cookie 16.1.5 命名空間的管理 16.1.6 版本的管理 16.1.7 對localStorage的模擬 16.2 Indexed Database 16.2.1 Indexed Database的定義 16.2.2 基礎架構 16.2.3 連接數(shù)據(jù)庫 16.2.4 對象存儲的創(chuàng)建 16.2.5 數(shù)據(jù)的添加·刪除·引用 16.2.6 索引的創(chuàng)建 16.2.7 數(shù)據(jù)的檢索與更新 16.2.8 數(shù)據(jù)的排序 16.2.9 事務 16.2.10 同步API 第17章 WebSocket 17.1 WebSocket概要 17.1.1 WebSocket的定義 17.1.2 現(xiàn)有的通信技術 17.1.3 WebSocket的標準 17.1.4 WebSocket的執(zhí)行方式 17.2 基本操作 17.2.1 連接的建立 17.2.2 消息的收發(fā) 17.2.3 連接的切斷 17.2.4 連接的狀態(tài)確認 17.2.5 二進制數(shù)據(jù)的收發(fā) 17.2.6 WebSocket實例的屬性一覽 17.3 WebSocket實踐 17.3.1 Node.js的安裝 17.3.2 服務器端的實現(xiàn) 17.3.3 客戶端的實現(xiàn) 17.3.4 客戶端的實現(xiàn)2 第18章 Web Workers 18.1 Web Workers概要 18.1.1 Web Workers的定義 18.1.2 Web Workers的執(zhí)行方式 18.2 基本操作 18.2.1 工作線程的創(chuàng)建 18.2.2 主線程一側的消息收發(fā) 18.2.3 工作線程一側的消息收發(fā) 18.2.4 工作線程的刪除 18.2.5 外部文件的讀取 18.3 Web Worker實踐 18.3.1 工作線程的使用 18.3.2 中斷對工作線程的處理 18.4 共享工作線程 18.4.1 共享工作線程的定義 18.4.2 共享工作線程的創(chuàng)建 18.4.3 共享工作線程的消息收發(fā) 18.4.4 共享工作線程的刪除 18.4.5 共享工作線程的應用實例 第5部分 Web API 第19章 Web API的基礎 19.1 Web API與Web服務 19.2 Web API的歷史 19.2.1 Web抓取 19.2.2 語義網(wǎng) 19.2.3 XML 19.2.4 Atom 19.2.5 JSON 19.2.6 SOAP 19.2.7 REST 19.2.8 簡單總結 19.3 Web API的組成 19.3.1 Web API的形式 19.3.2 Web API的使用 19.3.3 RESTful API 19.3.4 API密鑰 19.4 用戶驗證與授權 19.4.1 Web應用程序的會話管理 19.4.2 會話管理與用戶驗證 19.4.3 Web API與權限 19.4.4 驗證與授權 19.4.5 OAuth 第20章 Web API的實例 20.1 Web API的分類 20.2 Google Translate API 20.2.1 準備 20.2.2 執(zhí)行方式的概要 20.2.3 使用了Web API的代碼示例 20.2.4 微件(Google Translate Element) 20.3 Google Maps API 20.3.1 Google Static Maps API 20.3.2 我的地圖 20.3.3 Google Maps API的概要 20.3.4 簡單的Google Maps API示例 20.3.5 事件 20.3.6 Geolocation API與Geocoding API 20.4 Yahoo! Flickr 20.4.1 Flickr Web API的使用 20.4.2 Flickr Web API的使用實例 第6部分 服務器端JavaScript 第21章 服務器端JavaScript與Node.js 21.1 服務器端JavaScript的動向 21.2 CommonJS 21.2.1 CommonJS的定義 21.2.2 CommonJS的動向 21.2.3 模塊功能 21.3 Node.js 21.3.1 Node.js概要 21.3.2 node指令 21.3.3 npm與包 21.3.4 console模塊 21.3.5 util模塊 21.3.6 process對象 21.3.7 全局對象 21.3.8 Node.js程序設計概要 21.3.9 事件API 21.3.10 緩沖 21.3.11 流 第22章 Node.js程序設計實踐 22.1 HTTP服務器處理 22.1.1 HTTP服務器處理的基本流程 22.1.2 請求處理 22.1.3 響應處理 22.1.4 POST請求處理 22.2 HTTP客戶端處理 22.3 HTTPS處理 22.3.1 通過openssl指令發(fā)布自簽名證書的方法 22.3.2 HTTPS服務器 22.4 Socket.IO與WebSocket 22.5 下層網(wǎng)絡程序設計 22.5.1 下層網(wǎng)絡處理 22.5.2 套接字的定義 22.5.3 套接字程序設計的基本結構 22.5.4 套接字程序設計的具體實例 22.6 文件處理 22.6.1 本節(jié)的范例代碼 22.6.2 文件的異步處理 22.6.3 文件的同步處理 22.6.4 文件操作相關函數(shù) 22.6.5 文件讀取 22.6.6 文件寫入 22.6.7 目錄操作 22.6.8 對文件更改的監(jiān)視 22.6.9 文件路徑 22.7 定時器 22.8 Express 22.8.1 URL路由 22.8.2 請求處理 22.8.3 響應處理 22.8.4 scaffold創(chuàng)建功能 22.8.5 MVC架構 22.8.6 模板語言Jade 22.8.7 MongoDB(數(shù)據(jù)庫) 22.8.8 Mongoose的實例 22.8.9 使用了Express與Mongoose的Web應用程序 后記 索引
使用說明
1、下載并解壓,得出pdf文件
2、如果打不開本文件,請務必下載pdf閱讀器
3、安裝后,在打開解壓得出的pdf文件
4、雙擊進行閱讀
- 下載地址
發(fā)表評論
0條評論軟件排行榜
熱門推薦
- 南方Plus電腦版 v11.8.027.22M / 簡體中文
- 有柿電腦版 v11.5.684.06M / 簡體中文
- 網(wǎng)易新聞電腦版 v112.697.63M / 簡體中文
- 瀟湘書院電腦版 v2.3.11.888官方版49.65M / 簡體中文
- 開源閱讀電腦版 v3.2517.96M / 簡體中文
- 京東讀書電腦版 v1.13.4官方版1.98M / 簡體中文
- 未公開的Oracle數(shù)據(jù)庫秘密 迪貝斯pdf掃描版34.69M / 簡體中文
- 本草綱目 5.34M / 簡體中文
- Scala程序設計第二版 pdf高清完整版15.83M / 簡體中文
- C++黑客編程揭秘與防范第2版 冀云pdf掃描版54.58M / 簡體中文