摘要:模式的讀書筆記,個人向更新進度隨我的閱讀進度基本技巧盡量少用全局變量防止變量污染注意變量提升問題盡量使用單一模式,只使用一個在函數頂部進行變量聲明函數體循環優化循環條件優化對進行操作上面那種循環,將作為循環條件,每次循環時都要訪問數據的長度
《JavaScript模式》的讀書筆記,個人向!
更新進度隨我的閱讀進度
防止變量污染
注意JS變量提升問題
盡量使用單一var模式,只使用一個var在函數頂部進行變量聲明
function fun () { var a =1, b=2, sum = a+b, 函數體// }for循環優化
循環條件優化
for(var i=0; i上面那種循環,將marry.length作為循環條件,每次循環時都要訪問數據的長度,會使代碼變慢,尤其是當條件為HTML容器對象時,每次循環都回去訪問DOM,而DOM查詢操作是非常慢的,優化方法就是將已循環過的條件緩存起來
//這種方式,對長度只提取一次 for(var i=0, max=myarry.length; i2、用i++替代 i=i+1, i+=1
這樣替代的好處是1、使用了最少的變量 2、逐步減至0因為跟0比較比跟數組長度比較更有效率
優化代碼var myarr=[], i=myarr.length while(i--){ //操作 }for-in循環推薦使用,for循環來遍歷數組,用for-in循環來遍歷對象
hasOwnProperty()過濾原型鏈屬性
var man = { hands:2, legs:2, head:1 }, i=0 Object.prototype.clone="zhang" for(i in man){ if(man.hasOwnProperty(i)){ console.log(i,":",man[i]); } } //這樣子就在循環的時候過濾掉了繼承屬性了hasOwnProperty(),并不常用,當確認不了對象的內容時可以用上它進行安全檢查
switch模式switch(n) { case 1: 執行代碼塊 1 break; case 2: 執行代碼塊 2 break; default: result = "unknow" }保持縮進整齊
每個case語句結尾有一個break語句
用default作為switch的結尾,當所有case不匹配時給出一個默認結尾
不要增加內置的原型盡量不要對內置構造函數(Object(),Array()等)增加原型
避免使用隱式類型轉換JS中在使用比較語句時會進行隱式類型轉換,別如‘false==0’會返回true
parseInt()
在使用比較語句的時候使用"==="和"!==="來進行比較parseInt()第二個參數是進制參數,通常可以省略,但最好不要省略,因為該函數在解析0開頭的字符串的時候會按8進制來解析
var year="09"; year=parseInt(year,10) // return 9 // parseInt(year)返回值是0 //如果是純數字字符串,可以用下面兩種方法轉換 +"08" //結果是8 Number("08") //結果是8 // 如果不是純數字字符串,只能用paeseInt()來解析,其它方法都將反回NAN用注釋生成API文檔JS有兩個開源的工具來用注釋生成API文檔,分別是JSDoc Toolkit和YUIDoc
根據這兩工具所規定的格式來寫注釋代碼,就能夠生成API文檔
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/108397.html
摘要:如果為假值,不傳或者傳入,函數都會返回但是,傳入這個值是完全有可能的,所以這種判斷形勢是不正確的或者使用來判斷也可以原始類型優于封裝類型對象擁有六個原始值基本類型布爾值,數字,字符串,,和對象。 作為一個前端新人,多讀書讀好書,夯實基礎是十分重要的,正如蓋樓房一樣,底層穩固了,才能越壘越高。從開始學習到現在,基礎的讀了紅寶書《JavaScript高級程序設計》,犀牛書《JavaScri...
摘要:創建對象中,創建對象的基本模式有三種。因此,在設計構造函數時,需要進行慎重考慮。因此在中,這種問題被稱作繼承破壞封裝。靜態成員每個只有一份,直接通過類對象進行訪問。 什么是封裝 找工作時一些公司給了offer后我就想知道真正拿到手的是多少,畢竟賦稅繁重。但各種稅也好,五險一金也好我實在是弄不清楚,于是我就會在網上的一些稅后收入計算器上進行計算,只需要填寫一些基本信息,比如稅前收入,所...
摘要:設計模式與開發實踐讀書筆記最近利用碎片時間在上面閱讀設計模式與開發實踐讀書這本書,剛開始閱讀前兩章內容,和大家分享下我覺得可以在項目中用的上的一些筆記。事件綁定暫時這么多,以后會不定期更新一些關于我讀這本書的筆記內容 JavaScript 設計模式與開發實踐讀書筆記 最近利用碎片時間在 Kindle 上面閱讀《JavaScript 設計模式與開發實踐讀書》這本書,剛開始閱讀前兩章內容,...
摘要:繼承的是超類型中構造函數中的屬性,如上繼承了屬性,但沒有繼承原型中的方法。上述造成的結果是子類型實例中有兩組超類型的構造函數中定義的屬性,一組在子類型的實例中,一組在子類型實例的原型中。 ECMAScript只支持實現繼承,主要依靠原型鏈來實現。與實現繼承對應的是接口繼承,由于script中函數沒有簽名,所以無法實現接口繼承。 一、原型鏈 基本思想:利用原型讓一個引用類型繼承另一個引用...
摘要:語言精粹讀書筆記第四章函數函數字面量函數字面量包含個部分第一部分,保留字第二部分,函數名,它可以被忽略。這個超級延遲綁定使得函數對高度復用。構造器調用模式一個函數,如果創建的目的就是希望結合的前綴來調用,那它就被稱為構造器構造。 《JavaScript 語言精粹》 讀書筆記 第四章 函數 Functions 函數字面量 函數字面量包含4個部分: 第一部分, 保留字 function...
閱讀 2825·2023-04-25 20:06
閱讀 1446·2021-08-26 14:15
閱讀 2234·2021-08-12 13:27
閱讀 1772·2019-08-30 15:55
閱讀 3469·2019-08-30 13:20
閱讀 2825·2019-08-29 15:12
閱讀 3330·2019-08-29 15:06
閱讀 2858·2019-08-29 14:13