码迷,mamicode.com
首页 > Web开发 > 详细

高性能JS笔记2——数据存取

时间:2016-08-01 01:39:33      阅读:171      评论:0      收藏:0      [点我收藏+]

标签:

数据存取性能而言:

字面量>本地变量>数组元素>对象成员

一、标识符解析的性能

标识符解析是有代价的,一个标识符的位置越深,它的读写速度也就越慢。

局部变量的读写速度是最快的,全局变量在作用域链的最末端,所以尽可能使用局部变量。

如果某个跨作用域的值在函数中被引用一次以上,那么久把它存储到局部变量里。

二、改变作用域链

作用域链运行后一般不会改变的,With和 Try-Catch可以在执行时临时改变作用域链,功能模块执行完后,作用域链恢复。

改变作用域链后,访问改变后的对象更快了,但是访问函数内的局部变量变慢了,一般不建议使用。

function initUI(){
	var num1 = 0;
	with(docuent){
		var bd = body,
		links = getElementsByTagName("a");
		var num2 = num1;
		bd.className = "active";
	}
}

三、动态作用域

 

四、闭包、作用域和内存

 

高性能JS笔记2——数据存取

标签:

原文地址:http://www.cnblogs.com/windy2008/p/5722803.html

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