您好,登錄后才能下訂單哦!
本篇內容介紹了“分析js對象的讀取速度”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!
1、訪問字面量和局部變量最快,而訪問數組元素和對象成員相對較慢。訪問對象成員時,就像作用域鏈一樣,在原型鏈上搜索。
2、如果找到的成員在原型鏈中的位置太深,訪問速度就會變慢。
所以要盡量減少對象成員的搜索次數和嵌套深度。
// 進行兩次對象成員查找 function hasEitherClass(element, className1, className2) { return element.className === className1 || element.className === className2; } // 優化,如果該變量不會改變,則可以使用局部變量保存查找的內容 function hasEitherClass(element, className1, className2) { const currentClassName = element.className; return currentClassName === className1 || currentClassName === className2; }
內容擴展:
js對象操作性能問題
1 string越長,那么使用str+="xxx"所花的時間將顯著增加(近乎指數級別)。
2 對象數組僅僅只有400個元素的時候,對每個元素的屬性和方法的訪問時間都達到
了每個屬性或者方法1/4毫秒!如果一個元素有10個屬性,那么對數組的一次遍歷,至少需要1秒,恐怖
3 FileSystem的操作,特別是write的操作幾乎與要寫的字符串長度的平方成正比。
4 不要采用自己定義的方法進行字符串操作,特別是替代和查找,比較;
我對正則式掌握不透,使用自定義函數的時候,發現在上述2)中提到的遍歷中,
自定義函數耗費的時間達到了總時間的80%!
“分析js對象的讀取速度”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。