Flash Actionscript 优化指南

2019-10-08 17:56:02王旭

变量
在各种重要的代码优化手段中,有这么一条:在定义局部变量的时候,一定要用关键字var来定义,因为在Flash播放器中,局部变量的运行速度更快,而且在他们的作用域外是不耗占系统资源的。
aw附:var变量仅仅在花括号对中才有“生命”,个人认为没有系统学过编程的人容易出错的一个地方:

awMC.onLoad = function(){
var aw = 1;
}
awMC.onEnterFrame = function(){
//不存在aw这个变量
}
一段非优化代码:
function doSomething()
{
mx = 100
my = 100
ar = new Array()
for (y=0; y < my; y )
{
for (x=0; x < mx; x )
{
i = (y * mx) x
arr[i] = i
}
}
return arr
}

这段代码中,并未声明函数体内的那些变量(那些仅仅在函数内使用的变量)为局部变量,这使得这些变量被播放器调用的速度更慢,并且在函数执行完毕的时候仍然耗占系统资源。
下面列出的是经过改进的同样功能的代码:

function doSomething()
{
var mx = 100
var my = 100
var ar = new Array()
for (var y=0; y < my; y )
{
for (var x=0; x < mx; x )
{
var i = (y * mx) x
arr[i] = i
}
}
return arr
}

这样一来所有的变量均被定义为了局部变量,他们能够更快地被播放器调用。这一点在函数大量(10,000次)循环运行时显得尤为重要!当一个函数调用结束的时候,相应的局部变量都会被销毁,并且释放出他们占有的系统资源。
上一页12 3 4 下一页 阅读全文