About a month ago,Firefox 8實現了insertAdjacentHTML方法,該方法與innerHTML一起添加到IE4中。根據this基準,insertAdjacentHTML通常爲,其數量級比innerHTML快。insertAdjacentHTML如何比innerHTML快得多?
我假設兩者都調用相同的HTML解析器,那麼爲什麼差別很大? insertAdjacentHTML是一個簡單的方法調用,而innerHTML是一個getter/setter,可能會有一些開銷,但我永遠不會想象那麼多。
請注意,使用'appendChild'比兩者快得多。可能因爲不需要解析器。 與「appendChild」相比,'insertAdjacentHTML'和'innerHTML'之間的區別似乎不顯着。但是,如果你確實需要解析html字符串,'appendChild'不會有太大的幫助。這裏有一個詳細的JSperf:http://jsperf.com/insertadjacenthtml-perf/28 – oriadam