如何使JavaScript更高效

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

动态创建 元素

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

理论上来说,在页面加载完成之后可以通过 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,前端学习路线,各类问题,我们都可以为你解决。

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

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 高效的 JavaScript 本文转载自:众成翻译译者:边城链接:http://www.zcfy.cc/artic...
    唯我楼兰阅读 320评论 0 0
  • 一、JS前言 (1)认识JS 也许你已经了解HTML标记(也称为结构),知道了CSS样式(也称为表示),会使用HT...
    凛0_0阅读 2,807评论 0 8
  • 一、概述 document节点是整个文档树的顶层节点,每张网页都有自己的document节点。window.doc...
    周花花啊阅读 1,359评论 0 1
  • 蒋滨蔚的10月检视 10月悄悄结束,感谢自己一直很努力,感谢身边的好事坏事磨练激励我! 【10月成果和感受】 健康...
    蒋滨蔚阅读 458评论 5 2
  • 我在等,等这个世界上能够和我一起生活的人,性格与生活方式跟我相同或接近。也怕,错过了的也许才是最好的,,总是舔着伤...
    顾是年阅读 740评论 0 1