本書主要內(nèi)容有探索有用的習(xí)慣來編寫高質(zhì)量JavaScript代碼, 例如避免使用全局變量、使用單var聲明等; 學(xué)習(xí)為什么字面量表示模式是比構(gòu)造函數(shù)更簡潔的選擇; 探索在JavaScript中不同的定義函數(shù)的方法; 創(chuàng)建超越基本模式對象的對象, 基本模式對象通常使用對象字面量和構(gòu)造函數(shù); 學(xué)習(xí)在JavaScript中使用代碼重用和繼承的一些有效選擇; 學(xué)習(xí)常見設(shè)計模式(單體模式、工廠模式、裝飾模式)在JavaScript中的方法; 檢視應(yīng)用于特定客戶端瀏覽器環(huán)境下的模式。
模式是針對普遍問題的解決方案。更進一步地說,模式是解決一類特定問題的模板。斯特凡洛夫撰寫的《javascript模式》不是一本入門級的書,而是適用于希望將自身的javascript技巧提高到一個新層次的專業(yè)的開發(fā)人員和程序員。全書共八章節(jié),內(nèi)容包括簡介、基本技巧、字面量和構(gòu)造函數(shù)、函數(shù)、對象創(chuàng)建模式、代碼復(fù)用模式等。
前言第1章 簡介 模式 JavaScript:基本概念 ECMAScript 5 JSLint Coole第2章 基本技巧 編寫可維護的代碼 盡量少用全局變量 for循環(huán) for-in循環(huán) 不要增加內(nèi)置的原型 SWitch模式 避免使用隱式類型轉(zhuǎn)換 使用paeInt()的數(shù)值約定 編碼約定 命名約定 編寫注釋 編寫API文檔 編寫可讀性強的代碼 同行互查 在正式發(fā)布時精簡代碼 運行JSLint 小結(jié)第3章 字面量和構(gòu)造函數(shù) 對象字面量 自定義構(gòu)造函數(shù) 強制使用new的模式 數(shù)組字面量 JSON 正則表達式字面量 基本值類型包裝器 錯誤對象 小結(jié)第4章 函數(shù) 背景 回調(diào)模式 返回函數(shù) 自定義函數(shù) 即時函數(shù) 即時對象初始化 初始化時分支 函數(shù)屬性——備忘模式 配置對象 Curry 小結(jié)第5章 對象創(chuàng)建模式 命名空間模式 聲明依賴關(guān)系 私有屬性和方法 模塊模式 沙箱模式 靜態(tài)成員 對象常量 鏈模式 method()方法 小結(jié)第6章 代碼復(fù)用模式 傳統(tǒng)與現(xiàn)代繼承模式的比較 使用類式繼承時的預(yù)期結(jié)果 類式繼承模式#1——默認模式 類式繼承模式#2——借用構(gòu)造函數(shù) 類式繼承模式#3——借用和設(shè)置原型 類式繼承模式#4——共享原型 類式繼承模式#5——臨時構(gòu)造函數(shù) Klass 原型繼承 通過復(fù)制屬性實現(xiàn)繼承 借用方法 小結(jié)第7章 設(shè)計模式 單體模式 工廠模式 迭代器模式 裝飾者模式 策略模式 外觀模式 代理模式 中介者模式 觀察者模式 小結(jié)第8章 DOM和瀏覽器模式 關(guān)注分離 DOM腳本 事件 長期運行腳本 遠程腳本 酉己置JavaScript 載入策略 小結(jié)