高效能javascript讀書筆記之注意點
相關推薦
高效能javascript讀書筆記之注意點
1.避免雙重求值 允許傳人另一段javascript程式碼字串並執行的四種方法: eval()、Function()建構函式、setTimeout()和setInterval() 當在javascript程式碼中執行另一段javascript程
高效能javascript讀書筆記之操作DOM
DOM:文件物件模型,是一個獨立於語言的,用來操作XML和HTML文件的程式介面(API)。 瀏覽器通常會把DOM和javascript獨立實現,每次連線DOM和ECMAScript,都會被收取“過橋費”(效能消耗)。 優化方法: 1.減少訪問DOM的次數,把運算儘量留在
高效能 JavaScript 讀書筆記(四)
迴圈 1.減少迭代的工作量 2.倒序迴圈 條件語句 if-else && switch 大多數情況下,switch 比 if-else 執行的快。但只有條件數量很大的時候才明顯。 優化 if-else 1.把最可能出現的條件放在最前面。 2.巢
編寫高效能JavaScript (讀書筆記)
轉載自http://kb.cnblogs.com/page/501177/ 作者: Addy Osmani 讀書筆記: 作者以V8為例講解: 一.核心構成部分 二.垃圾回收GC:Garbage Collecation 更喜歡叫做資源回收。 Q1:在JavaScript
高效能 JavaScript 讀書筆記(五)
字串和正則表示式 字串連線 連線字串有很多方式,常見的有: 1.str = "a" + "b" + "c"; 2.str = "a"; str += "b"; str += "c"; 3.str = ["a","b","c"].join(""); 4.str = "
高效能 JavaScript 讀書筆記(三)
重繪與重排 概念 重排:當元素的寬和高發生改變的時候,就會重新排列元素,稱為重拍。 重繪:將重排的的元素重新繪製在瀏覽器中,稱為重繪。 在元素中新增段落、新增邊框、新增或者刪除元素、修改內外邊距等,一切改變現有元素的位置的操作都會導致重排的發生。相應的,新增背景色這一類沒有改變元素位
高效能 JavaScript 讀書筆記 (二)
資料存取 字面量、本地變數、陣列元素、物件成員 字面量只代表自身,不儲存在特定的位置。JavaScript 中的字面量有:字串、數字、布林值、物件、陣列、函式、正則表示式以及特殊的 null 和 undefined 值。 一般來說,訪問本地變數和字面量的事件較少,訪問陣列元素和物件成員花
JavaScript高階程式設計讀書筆記之JSON
JSON(JavaScript Object Notation)JavaScript物件表示法。JSON是JavaScript的一個嚴格的子集,利用了JavaScript中的一些模式來表示結構化資料。關於JSON,最重要的是理解它是一種資料格式,不是一種程式語言。雖然具有相同的語法形式,但JSON並不從屬於J
Javascript高階程式設計--讀書筆記之面向物件(一)
哈哈哈萬物皆物件,終於到了js的面向物件篇。 一、屬性型別 (1)資料屬性 資料屬性包含一個數據值的位置,在這個位置可以寫入和讀取數值,資料屬性有四個描述器行為的特性 [[Configurable]]:表示能否通過 delete 刪除屬性而重新定義屬性,預設值是ture [[Enumerab
Javascript高級程序設計--讀書筆記之面向對象(一)
friend 自定義 包括 類型 有一個 問題 相同 elb 模式 哈哈哈萬物皆對象,終於到了js的面向對象篇。 一、屬性類型 (1)數據屬性 數據屬性包含一個數據值的位置,在這個位置可以寫入和讀取數值,數據屬性有四個描述器行為的特性 [[Configurable]]:表
《編寫可維護的JavaScript》讀書筆記之程式設計實踐-不是你的物件不要動
不是你的物件不要動 JavaScript 獨一無二之處在於任何東西都不是神聖不可侵犯的。預設情況下,可以修改任何可以觸及的物件。解析器根本不在乎這些物件是開發者定義的還是預設執行環境的一部分——只要是能訪問到的物件都可以修改。在一個開發者獨自開發的專案中,這不是問題,開發者確切地
《編寫可維護的JavaScript》讀書筆記之自動化-Ant
Ant 開發者通常基於他們所熟悉的工具來選擇構建工具。 Ant 最初是為 Java 專案而量身定做的構建工具,但因其簡單的 XML 語法和內建的任務,成為 JavaScript 構建工具的一個明智選擇。 安裝 執行 Ant 需要 Java 環境,所以請確保你的系統已
《編寫可維護的JavaScript》讀書筆記之自動化-檔案和目錄結構
檔案和目錄結構 在開始構建你的系統之前首先要確定如何組織你的檔案和目錄。而檔案和目錄的結構取決於專案型別。 最佳實踐 拋開專案型別不說,總有一些適合於 JavaScript 檔案和目錄結構公用的最佳實踐。 一個檔案只包含一個物件 概念:
《編寫可維護的JavaScript》讀書筆記之程式設計實踐-丟擲自定義錯誤
丟擲自定義錯誤 在 JavaScript 中丟擲錯誤是一門藝術。一旦理解如何丟擲錯誤,以及在何時丟擲錯誤,除錯程式碼的時間將大大所縮短,對程式碼的滿意度將急劇提升。 錯誤的本質 如果錯誤沒有被丟擲或者報告給開發者,除錯是非常困難的。如果所有的失敗都是悄無聲息
《編寫可維護的JavaScript》讀書筆記之程式設計實踐-將配置資料從程式碼中分離
將配置資料從程式碼中分離出來 任何時候修改原始碼都會有引入 bug 的風險,且只修改一些資料的值也會帶來一些不必要的風險。精心設計的應用應當將關鍵資料從主要的原始碼中抽離出來,因為資料是不應當影響指令的正常執行。 什麼是配置資料 配置資料是應用中寫死(har
《編寫可維護的JavaScript》讀書筆記之程式設計實踐-避免“空比較”
避免“空比較” 在 JavaScript 中,我們常會看到這種程式碼:變數與 null 的比較,用來判斷變數是否被賦予一個合理的值。比如: var Controller = { process : function(items) { // 不好的寫法
《編寫可維護的JavaScript》讀書筆記之程式設計實踐-事件處理
事件處理 在所有 JavaScript 應用中事件處理都是非常重要的。所有的 JavaScript 均通過事件繫結到 UI 上,所以大多數前端工程師需要花費很多時間來編寫和修改事件處理程式。由於事件繫結沒有受到多大重視,大多數事件處理相關的程式碼和事件環境(對於開發者來說,每次事
《編寫可維護的JavaScript》讀書筆記之程式設計實踐-避免使用全域性變數
避免使用全域性變數 在瀏覽器中,window 物件往往過載並等同於全域性物件,因此任何在全域性作用域中宣告的變數和函式都是 window 物件的屬性。 【示例】: var color = "red"; function sayColor() { alert
《編寫可維護的JavaScript》讀書筆記之程式設計風格-變數、函式和運算子
變數、函式和運算子 變數宣告 變數宣告是通過 var 語句來完成的。JavaScript 中允許多次使用 var 語句,此外 var 語句幾乎可以用在 JavaScript 指令碼中的任意地方。 【注意】:不論 var 語句是否真正會被執行,所有的 var 語句都提
《編寫可維護的JavaScript》讀書筆記之程式設計風格-語句與表示式
語句與表示式 在 JavaScript 中,諸如 if 和 for 之類的語句有兩種寫法,使用花括號包裹的多行程式碼或者不使用花括號的單行程式碼。 【示例】: // 不好的寫法,儘管這是合法的JavaScript的程式碼 if(condition) doSo