About a month ago, Firefox 8 ha implementato il metodo insertAdjacentHTML, che è stato aggiunto a IE4 insieme a innerHTML. In base al benchmark this, insertAdjacentHTML è in genere un ordine di grandezza più veloce di innerHTML.In che modo insertAdjacentHTML è molto più veloce di innerHTML?
Suppongo che entrambi chiamino lo stesso parser HTML, quindi perché la differenza è così drammatica? insertAdjacentHTML è una semplice chiamata di metodo, mentre innerHTML è un getter/setter e probabilmente c'è un po 'di overhead per quello, ma non lo immaginerei mai.
Si noti che l'uso di 'appendChild' è molto più veloce di entrambi. Probabilmente perché non è necessario nessun parser. La differenza tra 'insertAdjacentHTML' e' innerHTML' sembra insignificante rispetto a 'appendChild'. Tuttavia, se è necessario analizzare la stringa html, 'appendChild' non sarà di grande aiuto. Ecco un JSperf dettagliato: http://jsperf.com/insertadjacenthtml-perf/28 – oriadam