大又大又粗又硬又爽少妇毛片,女人18毛片水真多免费看,高清在线播放,亚洲伊人色欲综合网

東郡網(wǎng)絡建站時數(shù)據(jù)存儲

發(fā)布者:東郡網(wǎng)絡 時間:2015-06-19 00:00:00

一般腳本中分別在字面量值、變量、數(shù)組元素和對象屬性這4種地方存于數(shù)據(jù)。讀取數(shù)據(jù)總會帶來性能開銷,而開銷大小取決于數(shù)據(jù)存貯在這4中位置中的哪一種。

在大多數(shù)瀏覽器中,從字面量中讀取值和從局部變量中讀取值的開銷差異很小,以至于可以忽略不計;你可任意地混合使用字面量和局部變量,而無需擔心性能問題。真正的差異在于從數(shù)組或?qū)ο笾凶x取數(shù)據(jù)。存取這些數(shù)據(jù)結(jié)構(gòu)中某個值,需要通過索引(對干數(shù)組)或?qū)傩灾?對于對象)來查詢數(shù)據(jù)存儲的位置。

十堰網(wǎng)站建設技術人員為了測試數(shù)據(jù)存取時間對所在位置的依賴,創(chuàng)建了一個從備種位置讀取200 000次數(shù)值的實驗。東郡網(wǎng)絡技術人員在多個瀏覽器上做這個實驗,結(jié)果剛好一分為二:Internet Explorei、Opera和Firefox 3存取數(shù)組元素比對象屬性快:而chrome、Safati、Firelbx 2和Firefox 3.1+存取對象屬性比數(shù)組元素快.如下圖

從測試結(jié)果中可以得出一個重要啟示:始終將那些需要繁瑣存取的值存儲到局部變量中。請看下面代碼:

這段代碼多次讀取data.count的值。乍一看指讀取了兩次;一次在if語句中,一次在for循環(huán)中。然而實際讀取data.count的次數(shù)應該是data.count的值加1,因為每次進入循環(huán)時都會執(zhí)行控制語句(i〈data.count)。如果將值存儲到局部變量中,然后從局部變量中存取,函數(shù)將運行得更快:

改寫后的函數(shù)在執(zhí)行過程中讀取data.count僅有一次,這是因為這個函數(shù)一開始就把data.count存儲到局部變量中。這樣函數(shù)其他位置就可以直接使用局部變量count,從而減少讀取對象屬性值的次數(shù)。由于減少了查找對象屬性的次數(shù),函數(shù)的執(zhí)行效率將比志氣啊你的更高。

隨著數(shù)據(jù)結(jié)構(gòu)深度的增加,它對數(shù)據(jù)存取速度的影響也跟著邊打。例如存取data.count比data.item.count快,存取data.item.count比data.item.subitem.count快。在處理屬性是,點符號(.)的使用(用于查找屬性)次數(shù)直接影響存取該屬性的總耗時。下圖展示了個瀏覽器中屬性深度與數(shù)據(jù)存取時間的關系。這個測試只數(shù)據(jù)存取實驗的一部分。

十堰網(wǎng)站建設技術人員在數(shù)據(jù)存取時,將函數(shù)中使用超過一次的對象屬性或數(shù)組元素存儲為局部變量是一種好方法。

在處理HTMLCollection對象時用局部變量特別重要。實際上每次存取HTMLCollection對象的屬性,都會對DOM文檔進行動態(tài)查詢。例如:

這段代碼的第一行創(chuàng)建了一個查詢來獲取頁面中所有的〈div〉元素,并將查詢結(jié)果存儲到divs中。每次通過屬性名或索引存取divs的屬性時,DOM實際上重復執(zhí)行了一次對頁面上多有〈div〉元素的查詢;在這段代碼中,每次讀取divs.length或divs[i]都會對頁面查詢一次。一般說來,查找這些屬性比查找飛DOM對象屬性或數(shù)組元素需要更多的時間。因此重要的是:盡可能把這類值存儲在局部變量中,以避免HTMLCollection兌現(xiàn)引發(fā)的重新查詢。例如:

上述將HTMLCollection對象divs的長度存儲到了局部變量中,這樣就減少了直接存取改兌現(xiàn)的次數(shù)。上一個版本的代碼中,在每次循環(huán)中要讀取divs兩次:一次是銅鼓哦指定位置檢索對象,另一次是檢測長度。新版本你的代碼省掉了每次訓話你都要檢測對象長度的運算。

 本信息來源于:東郡網(wǎng)絡

微信網(wǎng)站建設分享 新浪網(wǎng)站建設分享 微博網(wǎng)站建設分享 空間網(wǎng)站建設分享

400-8086-755    

掃描二維碼
與銷售顧問咨詢