offsetWidth 屬性效能很差嗎?

2021-10-06 17:49:22 字數 480 閱讀 5918

最近乙個電子**的應用中需要對單元格進行批量寬度檢查,然後發現執行效率很低下。

一步步跟蹤執行時間後發現

if (div.offsetwidth < td.offsetwidth)

這麼一行簡單的判斷語句,耗時近30ms!!!

太誇張了!執行500次這種判定,就要15秒。

嘗試改寫成 div.currentstyle.width 效能一樣低下。

請問,有高效能的方法取到物件的實際顯示寬度嗎?

也許是獲取div物件和td物件比較耗時

你不需要每次迴圈都獲取td.offsetwidth啊,**每行各列的單元格寬度都應該是一樣的,

只需要獲取第一行各列的單元格的offsetwidth,用陣列儲存,之後就不需要再獲取了。

使用offsetwidth之類的屬性時,會造成回流,所以比較消耗效能,

所以並沒有好的解決辦法是吧?

正如樓上所說,只能通過定義變數去儲存offset的值.

質量屬性 效能

效能是指系統的響應能力,即對外部刺激 事件 做出反應時所需要的時間或在某段時間內所處理的事件個數。一般我們會用等待時間 處理期限 系統吞吐量 響應抖動 未處理事件 丟失資料等指標了解系統效能。處理期限 最長等待時間。系統吞吐量 系統單位時間處理事務的次數。響應抖動 等待時間的變化。缺失率 未處理事件...

物件屬性COPY的幾種效能

解決 檢查 發現將2個物件的屬性合併成乙個物件。使用了自己寫的反射方法。進過測試,此反射方法在高併發情況下,效率會越來越低。於是研究了下幾種屬性copy的工具。效能與穩定性 cglib的beancopier springframework的beanutils apache propertyutils...

script的src屬效能實現跨越訪問

結果 通常我們使用xmlhttprequest請求php獲取資料。但是請求的物件僅限於相同域內,對於不同域的請求,我們得使用jsonp技術 結果 1.在script中以get請求php檔案,jsonp.php通過 get物件獲得了傳給php的引數callback pmx,這個引數值是一段字串,和js...