下一代javascript引擎
2008年,javascript引擎獲得了第一次巨大的性能提升。Google推出了新的瀏覽器Chrome,Chrome是第一款帶有優(yōu)化javascript引擎(名為V8)的瀏覽器。V8是為Js設(shè)計(jì)的即時(shí)編譯引擎(JIT),它把js代碼轉(zhuǎn)成機(jī)器代碼,然后執(zhí)行。由此帶來的非常快速的Js執(zhí)行。隨后,其他瀏覽器很快也采用了自己的js優(yōu)化引擎。
有了這些新的Js引擎,優(yōu)化在編譯階段被做了,可能有一天開發(fā)者在他們的代碼中可以完全不用擔(dān)心性能優(yōu)化,但這一天還沒有到來。
性能仍然是一個(gè)問題
盡管在核心Js執(zhí)行時(shí)間上有了進(jìn)步,還有一些Js方面的問題,新的引擎不能夠處理。網(wǎng)絡(luò)延遲造成的延遲,影響頁面外觀的操作,尚沒有被瀏覽器充分的優(yōu)化。雖然簡單的優(yōu)化,如函數(shù)內(nèi)聯(lián),代碼折疊和字符串連接算法在編譯器中很容易優(yōu)化。網(wǎng)絡(luò)應(yīng)用的動(dòng)態(tài)性、多方面性意味著這些優(yōu)化只解決了部分問題。
更快的引擎不能提供幫助的其他主題:DOM操作、網(wǎng)絡(luò)延遲、阻塞和并發(fā)下載JS,等等。