论坛交流
首页办公自动化| 网页制作| 平面设计| 动画制作| 数据库开发| 程序设计| 全部视频教程
应用视频: Windows | Word2007 | Excel2007 | PowerPoint2007 | Dreamweaver 8 | Fireworks 8 | Flash 8 | Photoshop cs | CorelDraw 12
编程视频: C语言视频教程 | HTML | Div+Css布局 | Javascript | Access数据库 | Asp | Sql Server数据库Asp.net  | Flash AS
当前位置 > 文字教程 > Flash AS编程教程
Tag:2.0,3.0菜鸟,游戏,,cs,技巧,源码,,文本,文字,函数,音乐,随机,拖拽,asp,access,xml,mc,视频教程

教你如何优化你的AS代码

文章类别:Flash AS编程 | 发表日期:2008-10-6 18:40:00


一般优化

1 变量

   用var声明局部变量,例如:
  function doosomething()
{
    mx=100;
   for(i=0;i<10;i++)
   {
    //语句
   }

}// 这种不好

function doosomething()
{
   var mx=100;
   for(i=0;i<10;i++)
   {
    //语句
   }

}//这种效率高。因为局部变量引用快,而且变量使用后,系统会自动回收。

2 帧频设置最好在 25~35fps。

3 位图与矢量图。
  (1) 矢量图做好去掉边框。
  (2) gif ,jpg ,png这些位图中,以png格式的位图,渲染得最快。

4 影片剪辑的_visible属性。
  _visible=false;
  只是看不见而已,该MC仍然存在。仍然需要计算。
  我们可以将该MC 的第一帧设成空关键帧,在需要的时候再用gotoandstop()语句到你想要的帧。

5 数组
  循环中的数组,多用for in语句,而少用for ,while语句。
例如: for(for i in arr)
     {
            if(arr>50)
         {
          //语句
          }

      }
高级优化

1 for循环与while循环

   代码1:
    for(var i=0;i<1000;i++)
{
   //code
}

代码2:
   var i=-1;
    while(++i<1000)
{
   //code
}

在用attchMove()动态导入mc时,代码2 效率较代码1 高。

2 从数组中读取数据。

  for in 语句较快。

3 向数组写入数据

while循环稍微好点。

4 合并相同项

  例如 :
代码1

   var nm=null;
for(var i=0;i<MAX;i++)

   {  
      num=Math.floor(MAX)-Math.ceil(MAX);
   }
  
代码2

   var nm=null;
   var floor=Math.floor;
   var ceil=Math.ceil
for(var i=0;i<MAX;i++)

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

5 _global 变量与时间轴变量  

  _global全局变量比时间轴变量引用快。

6 单行付值 与多行付值。

   a=b=c=0;
  比  a=0;
       b=0;
       c=0;
  效率高,(虽然影响可读性。)
7 变量名
  
  变量名越短越好。

8 循环体中的变量

  将变量在循环体中声明 比 在循环体前声明 效果要好。

  例如
  
  代码1
   for(i=0;i<50;i++)
    {
       var nm=1
       语句;
    }

代码2
  var nm=1;
   for(i=0;i<50;i++)
    {
          语句;
    }
  代码1 比代码2效率高。

9 用嵌套if 代替。。(不知怎么翻译了 -_- P)
  
代码1

if(a==1)   
{   if(a==1)
           {     if(c==3)
               {     if(d==4)
                      {
                      var k=a*b*c*d;

                       }

                 }
  
            }
}

代码2

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

{
   var k=a*b*c*d;

}

代码1比代码2 效率高。
视频教程列表
文章教程搜索
 
Flash AS推荐教程
Flash AS热门教程
看全部视频教程
购买方式/价格
购买视频教程: 咨询客服
tel:15972130058