| 首页 | 新闻 | 网页 | 设计 | 色彩 | 原创 | 视觉 | 素材 | 动漫 | 酷站 | 策划 | 文案 | 访谈 | 运营 | 编程 | 数据库 | 服务器 | 下载 | 图库 | 
您的位置: 幽幽天空 > 网页 > 网页制作 > Flash教程 > ActionScript教程 > 文章正文 用户登录
TinyURL免费缩短网
龙太极/100m/asp/
无限网络提供50M 
苏能科技100M/FTP
悠博科技50M/FTP/
华云网络30M/FTP/
RealTracker提供免
Flash Remoting -
XML connector的讨
ASP+FLASH+ACCESS

Actionscript优化教程 高级优化2           

Actionscript优化教程 高级优化2

作者:佚名 来源:闪吧 作者: Marco Lapi,alias Lap 更新:2007-1-13 20:48:02 错误报告 我要投稿

5)单独声明变量vs.同时声明多个变量
按此在新窗口浏览图片

尽可能地同时为多个变量赋值。

这样可以使速度有细微的提高。

如果您有这样一段代码:

a = 0;

b = 0;

c = 0;

d = 100;

e = 100;

那么请换成下面的方式:

a = b=c=0;

d = e=100;

6)查找变量名
按此在新窗口浏览图片

这个测试展示节省查找变量名的时间是多么重要,特别是在一个循环结构中尤其如此。与其在每轮循环中调用Math.random(),不如定义一个对该函数的引用,这将节省您的时间,因为函数名只在进入循环体之前被处理一次。

例如:

var num = null;

t = getTimer();

for (var i = 0; i<MAX; i++) {

num = Math.floor(MAX)-Math.ceil(MAX);

}

t1.text = "Always lookup: "+(getTimer()-t);

就不如这个好:

t = getTimer();

var floor = Math.floor;

var ceil = Math.ceil;

for (var i = 0; i<MAX; i++) {

num = floor(MAX)-ceil(MAX);

}

7)短变量名vs.长变量名
按此在新窗口浏览图片

变量名应该尽可能地短。

在这个测试里面您可以看到多长的变量名会对速度造成负面的影响。

在优化代码中的关键部分时,我们建议使用非常短的变量名(12个字符)

8)在循环体中声明变量vs.在循环之前声明变量
按此在新窗口浏览图片

在对这一条进行测试之前我们以为在循环结构开始之前声明一个局部变量可以节省多余的时间,但是测试结果恰恰相反。

// Inside

t = getTimer();

for (var i = 0; i<MAX; i++) {

var test1 = i;

}

t1.text = "Inside:"+(getTimer()-t);

// Outside

t = getTimer();

var test2;

for (var i = 0; i<MAX; i++) {

test2 = i;

}

9)使用嵌套if

按此在新窗口浏览图片

在使用复杂条件表达式的时候可以对代码进行优化,将它们分散成嵌套在一起的单个条件。

这样您不需要每次都计算所有的表达式。

下面的代码是用来对这一基准进行测试的:即便是在条件表达式非常简单的情况下,速度的提高也是显著的。

既然您可以发现表达式得到false值是在第3个条件的位置,因此您甚至可以将它放在第2或第1个位置以获取更好的性能。

MAX = 20000;

a = 1;

b = 2;

c = -3;

d = 4;

var i = MAX;

while (--i>-1) {

if (a == 1 && b == 2 && c == 3 && d == 4) {

var k = d*c*b*a;

}

}

var i = MAX;

while (--i>-1) {

if (a == 1) {

if (b == 2) {

if (c == 3) {

if (d == 4) {

var k = d*c*b*a;

}

}

}

}

}

10)嵌套循环(for vs. while
按此在新窗口浏览图片

嵌套循环是一种普通的编辑技术,用来访问2维的数据,例如一个tile based game中的地图数组,等等。正如您所希望的一样,前面的测试中使用while循环产生更好的效果。

文章录入:skyuu    责任编辑:skyuu 
  • 上一篇文章:

  • 下一篇文章:
  • 【字体: 】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
    网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)
    发表评论:
    姓名:  评 分: 1分 2分 3分 4分 5分
     
  • 严禁发表危害国家安全、政治、黄色淫秽等内容的评论。
  • 用户需对自己在使用幽幽天空服务过程中的行为承担法律责任。
  • 本站管理员有权保留或删除评论内容。
  • 评论内容只代表机友个人观点,与本网站立场无关。