欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

javascript中的關(guān)于類型轉(zhuǎn)換的性能優(yōu)化

 更新時間:2010年12月14日 21:47:33   作者:  
類型轉(zhuǎn)換是大家常犯的錯誤,因?yàn)镴avaScript是動態(tài)類型語言,你不能指定變量的類型。
1. 把數(shù)字轉(zhuǎn)換成字符串,應(yīng)用"" + 1,雖然看起來比較丑一點(diǎn),但事實(shí)上這個效率是最高的,性能上來說:("" + ) > String() > .toString() > new String(),盡量使用編譯時就能使用的內(nèi)部操作要比運(yùn)行時使用的用戶操作要快。String()屬于內(nèi)部函數(shù),所以速度很快,而.toString()要查詢原型中的函數(shù),所以速度遜色一些,new String()用于返回一個精確的副本。

2. 浮點(diǎn)數(shù)轉(zhuǎn)換成整型,這個更容易出錯,很多人喜歡使用parseInt(),其實(shí)parseInt()是用于將字符串轉(zhuǎn)換成數(shù)字,而不是浮點(diǎn)數(shù)和整型之間的轉(zhuǎn)換,我們應(yīng)該使用Math.floor()或者M(jìn)ath.round()。另外,和第二節(jié)的對象查找中的問題不一樣,Math是內(nèi)部對象,所以Math.floor()其實(shí)并沒有多少查詢方法和調(diào)用的時間,速度是最快的。

3. 對于自定義的對象,如果定義了toString()方法來進(jìn)行類型轉(zhuǎn)換的話,推薦顯式調(diào)用toString(),因?yàn)閮?nèi)部的操作在嘗試所有可能性之后,會嘗試對象的toString()方法嘗試能否轉(zhuǎn)化。

相關(guān)文章

最新評論