技术文让前端飞程序员

如何使JavaScript更高效

2017-03-22  本文已影响0人  京程一灯

来自:众成翻译  译者:边城

动态创建 元素

加载和处理脚本需要时间,但有些时候,加载了脚本却从未使用。加载这样的脚本纯粹是在浪费时间和资源,最好根本就不要加载不使用的脚本。通过一个简单的加载器脚本可以检查其它脚本是否会用到,只有在脚本实际用到的时候才创建脚本元素。

理论上来说,在页面加载完成之后可以通过 SCRIPT 元素来加载额外的脚本并通过 DOM 添加到文档中。当前所有主流浏览器都支持这样做,但是它实际上可能是在浏览器上请求而不是立即加载脚本。另外,如果需要在页面加载完成之前加载脚本,就最好在脚本加载的过程中进行检查并使用 document.write 来创建脚本标签。千万记得要转义斜杠以免过早结果当前脚本:

if(document.createElement && document.childNodes) {  document.write('<\/script>');}if(window.XMLHttpRequest) {  document.write('<\/script>');}

location.replace() 控制历史记录

偶尔是需要使用脚本来改变页面地址。最典型的做法是给 location.href 赋予一个新地地址。这样做会添加一个历史记录,同时加载一个新的页面,这和激活一个普通的链接一样。

在某些情况下,并不希望出现一条额外的历史记录,因为用户不需要回到之前的页面。如果在内存特别重要的环境下,这样做就非常有用。当前页面使用的内存可以通过替换历史记录来得到重新利用,使用 location.replace() 方法就可以做到。

`location.replace('newpage.html');`

请注意,该页可能仍然保留在缓存中,并可能在那里使用内存,但不会用到像保存在历史记录里那么多。

京程一灯,梦起的地方,我们始终相信通过努力,可以改变自己的命运。

我们始终相信,通过坚持不懈,可以为大家解决更多的前端技术问题。

我们始终相信,时间可以证明,我们可以为广大IT从业者解决前端学习路线。

HTML5,CSS3,Web前端,jquery,javascript,前端学习路线,各类问题,我们都可以为你解决。

更多技术好文,前端问题,面试技巧,请关注京程一灯(原一灯学堂)

上一篇 下一篇

猜你喜欢

热点阅读