码迷,mamicode.com
首页 > 编程语言 > 详细

javascript中数据访问性能优化简析

时间:2015-05-07 16:48:55      阅读:128      评论:0      收藏:0      [点我收藏+]

标签:javascript   数据   代码   性能优化   变量   

我们一般写代码都会考虑代码的可读性、可扩展性及重要的是浏览器的解析。减少代码数量提高代码性能加载速度,是我们每个coder所追求的。在javascript中,我们有时必须考虑的是如何确定数据的存储位置,以获取最佳的读写效率,数据存储的位置,关系到代码执行过程中数据被检索的速度,数据的存储位置在很大程度会影响其读取速度。

javascript中有4种基本的数据存取位置:直接量、变量、数组元素、对象才成员
每种数据存储的位置都有不同的读写消耗。一般的情况下,从一个直接量和局部变量中存取数据的性能差异很小,微不足道。但访问数组元素和对象成员的代价比较高点,这个需要根据浏览器来决定代价的大小。

标识符的解析也需要消耗计算机性能,在运行的作用域中,一个标识符所在位置越深,其读写的速度也会越慢,因此,函数中,读写局部变量是最快的,而读写全局变量是最慢的,因为全局变量总是存在运行期的作用域链环境的最末端。所以在没有优化javascript引擎的浏览器中,我们尽可能用局部变量,如果某个跨作用域的值在函数中被引用一次以上,我们可以把它存储到一个局部变量里,如下面的例子

function initUI(){
        var doc = document,
            bd = doc.body,
            links= doc.getElementsByTagName(‘a‘),
            i = 0,
            len = links.length;
        while(i<len){
            update(links[i++]);
        }
        doc.getElementById(‘btn‘).onclick=function(){

        };
        bd.className = ‘active‘;
    }

document对象存储到局部变量doc,引用三次降低到一次,虽然提高性能效果不是很明显,但是,如果document全局变量引用很次,性能效果的改善会很明显。

javascript中数据访问性能优化简析

标签:javascript   数据   代码   性能优化   变量   

原文地址:http://blog.csdn.net/lfcss/article/details/45561413

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!