`

ActionScript使用小技巧

    博客分类:
  • Flex
 
阅读更多
地球人都知道作为一名Flash开发,ActionScript是我们工作的基本语言,如何利用ActionScript写出高效的代码呢? 今天我整理了一篇简单的只针对代码细节的文章和大家一起分享下自己在这方面的积累。
抛除算法和渲染对应用程序的影响还有什么地方会影响程序的效率呢?——那就是代码的细节,这部分最容易被人忽略却又是最容易学习的内容,有的时候可以让你的程序运行得更加快。
1、关于变量的声明:
//声明对象
var obj:Object = new Object{};
//其实这样速度更快,而且写更少的代码
var obj:Object = {};
//声明数组
var arr:Array = new Array();
//这样更快,而且写更少的代码
var arr:Array = [];

2、关于数组的使用
数组除了最常用的Array.push() 和 Array.pop() 函数外,还有两个也是大家常用到的 Array.shift() 和 Array.unshift(),但是后两者的效率却比前者的效率低了几个数量级!如果不是必要,请不要用 Array.shift() 和 Array.unshift()。
还有一个函数 Array.splice() ,一般被大家用来删除数组中的元素,面对数据庞大的数组,此函数会消耗很多的时间,如果对数组的数据顺序不太敏感的话,建议使用下面的优化函数:
function removeElementOfArray(index:int, array:Array):void
{
    var finalIndex:int = array.length - 1;

    if (index != finalIndex)
    {
        array[index] = array[finalIndex];
    }

    array.pop();
}
获取数组的长度后最好保存下来,下次用不要再去调用 Array.length,因为Array.length的调用也会带来性能损耗的。
3、使用Object还是Dictionary?
很多人都是利用Object或者Dictionary来做哈希表,一般情况下,Dictionary是比Object的访问速度快约15%左右,但是Dictionary在访问不存在的数据的时候,速度要比Object慢10%左右,所以在使用的时候要权衡究竟访问到空数据的比例有多大,进而选择应该使用的对象。
4、关于逻辑判断
很多人喜欢这样写:
foo && bar++;
但是其效率只有下面等价代码的一半
if (foo)
{
    bar++;
}
很多人还喜欢:
if (myVar == null)
{
    //code here...
}
其实下面的代码要更加少并且更加高效
if (!myVar)
{
    //code here...
}
5、关于取整和数据转换
把小数转换成整数,这个是程序开发中经常遇到的。下面的语句从慢到快
Math.round(float);

Math.ceil(float); // or Math.floor(float);

int(float);
把字符串转换成整数或者小数我们经常用:
parseInt(str, 10);

parseFloat(str);
如果都是10进制直接用下面更快:
int(str);

Number(str);

6、关于循环
for循环
for (var i:int=0; i<10000000; ++i)
{
    //code here...
}
要比 while 循环:
while (i < 10000000)
{
    ++i;
}

更快。

摘自:http://bbs.9ria.com/viewthread.php?tid=87436
分享到:
评论

相关推荐

    flash ActionScript.3小技巧

    ### Flash ActionScript 3 小技巧详解 #### 1. 更改帧速率 在 Flash 开发过程中,有时我们需要更改动画的帧速率以适应不同的场景需求。ActionScript 3 提供了一个简单的方法来实现这一功能: ```actionscript // ...

    actionscript3.0拼图游戏小技巧代码

    在本示例中,我们看到的是一段用于实现拼图游戏的小技巧代码。让我们详细解析一下这个代码片段,了解它是如何工作的。 首先,我们导入所需的事件类和显示对象类: ```actionscript import flash.events.Event; ...

    ActionScript3小游戏-贪吃蛇

    【ActionScript3小游戏-贪吃蛇】是一款基于Adobe Flash平台,使用ActionScript3编程语言编写的经典小游戏。ActionScript3是Flash Professional中的主要脚本语言,它为开发动态交互式内容提供了强大的支持。这款...

    actionscript代码产生动画的技巧flash源码

    ActionScript是Adobe Flash平台的核心编程语言,用于创建交互式、动态的富媒体内容,包括动画。这个源码文件集合提供了一个宝贵的资源,让我们...同时,这些技巧也适用于Adobe Animate或其他支持ActionScript的平台。

    Actionscript3.0开发的射击小游戏

    通过分析这个射击小游戏,我们可以深入了解ActionScript3.0在游戏开发中的实际应用,学习到游戏开发的基本流程和技巧。对于开发者来说,无论是新手还是有经验的程序员,都可以从中获取宝贵的知识和实践经验。

    ActionScript3.0做的Flash小游戏 俄罗斯方块

    在这个项目中,开发者利用ActionScript3.0的强大功能,构建了一个经典的Flash小游戏——俄罗斯方块。让我们深入探讨一下这个项目中的关键知识点。 1. **ActionScript3.0基础**: ActionScript3.0是AS系列的最新...

    actionscript_百度百科

    - **调试技巧**:为了确保代码的正确性和效率,开发者需要掌握一定的调试技巧,比如使用断点、查看变量值变化、监听事件响应等。 #### 五、ActionScript与其他技术的结合 - **与HTML5的融合**:虽然Flash在移动...

    actionscript 3.0动画制作教程

    通过深入学习和实践本教程中的例子,你将能够熟练掌握ActionScript 3.0动画制作的核心技巧,并能够创建出富有创意和吸引力的互动内容。记得多做练习,理论知识与实际操作相结合,才能更好地提升你的动画制作水平。

    flash actionscript3游戏开发教程小as3 demo 1个人投掷西瓜把另1个人砸死.zip

    在本教程中,我们将深入探讨如何使用Flash ActionScript3(AS3)进行游戏开发,特别是创建一个名为"小as3 demo 1个人投掷西瓜把另1个人砸死"的简单游戏。ActionScript3是Adobe Flash Platform的核心编程语言,它为...

    Flash ActionScript3.0编程手册

    - **调试技巧**:掌握使用调试工具和技术,如断点、日志记录等,帮助查找和修复程序中的错误。 - **网络编程**:学习如何使用ActionScript3.0进行网络通信,如发送HTTP请求、读取XML数据等。 #### 七、案例分析 - *...

    Learning ActionScript2.0 in Flash

    2. **事件驱动编程**:理解如何使用事件来控制应用程序的流程,这是ActionScript 2.0的核心概念之一。 3. **对象和类**:学习如何创建和使用对象,理解类的概念,以及如何通过继承创建子类。 4. **实例化和引用**...

    Spring ActionScript 开发教程

    - **小技巧**:这些技巧可以帮助开发者更高效地使用Spring ActionScript,提高开发效率和代码质量。 #### 九、Spring ActionScript Operation API 入门教程 - **Operation API**:这是一种高级特性,用于处理更复杂...

    ActionScript3.0 游戏编程大学[含源码]

    书中的实例分析涵盖了多种流行的小游戏类型,如平台跳跃、射击、益智等,通过这些案例,读者可以学习到实际游戏开发中的策略和技巧。每个案例都提供详细的源代码,方便读者跟随学习和实践。 最后,附带的"Flash ...

    ActionScript高级组件开发

    使用ActionScript开发高级组件不仅可以提升Flex应用的用户体验,还能帮助开发者更好地掌握这一强大工具的使用方法。通过深入了解组件的实现原理和最佳实践,可以创建出既美观又实用的用户界面组件。此外,随着技术的...

    ActionScript 3.0 Design Patterns.pdf

    Sanders)和昌迪玛·库马兰坦格(Chandima Cumaranatunge)所著的一本专业书籍,深入探讨了在Adobe Flash平台中使用ActionScript 3.0进行编程时的设计模式应用。设计模式是在软件工程领域中被广泛认可的解决方案模板,...

    actionscript3游戏编程素材

    本资源“actionscript3游戏编程素材”包含了一系列的游戏编程小示例,旨在帮助学习者掌握如何使用ActionScript 3.0进行网页游戏开发。 ActionScript 3.0相较于早期版本有显著提升,包括更严格的类型检查、更快的...

    使用 ACTIONSCRIPT® 3.0 开发指南

    ### 使用ACTIONSCRIPT® 3.0开发指南 #### 一、ActionScript 3.0简介 ActionScript 3.0是一种强大的面向对象编程语言,它主要用于Adobe Flash Player和Adobe AIR等环境中开发交互式应用程序和多媒体内容。作为一种...

    ActionScript 编程基础

    9. **错误处理**:学习如何使用try...catch语句来捕获和处理运行时错误,是确保程序健壮性的重要技巧。 10. **调试工具**:熟悉使用Flash的ActionScript编译器和调试器可以帮助你找出代码中的错误并优化性能。 ...

Global site tag (gtag.js) - Google Analytics