全局变量让你告别繁琐的路径

变量

  有时候,有一些非常重要的MovieClip,比如一些操作信息的提示类型的MC(比如叫做“a”),需要不断的改变其属性,比如一个文本框。而这些改变又是由许多不同的MC或者Button的一些事件触发的,甚至,触发这些事件的Button和MC在很远的路径,要找到我们这个a,需要拐很多弯路。那么这时候,可以在a建立好了之后直接将a保存在一个全局变量中。注意,我们只是保存一个指向,而非一个MC实例。那么,以后再其他路径下对a的操作,则可以把繁琐的_parent.这些全部去掉了。
当然,关于传统方法和全局变量引用法之间是否存在效率差异,这个还说不清楚。我做过如下测试

_global.r_hint_mc = _root.createEmptyMovieClip("a", 1);
//前缀r,代表reference,指向的意思。
with (r_hint_mc) {
  swapDepths(10);
}
with (a) {
  trace(getDepth());
 //可见with方法可以成功调用全局MC的指向,深度的确给改变了。
}
b.onRelease = function() {
  testa = getTimer();
  trace("called");
  for (var j = 1; j<100000; j++) {
     r_hint_mc.newArray = new Array()
     r_hint_mc.newArray[j]=r_hint_mc._currentframe 
    // the result is about 2400 - 2500
    // No big change in MC
    // the result is about 2250 in a MCEvent!!!
    //----- Local Looking
    //this._parent.a.newArray = new Array();
    //this._parent.a.newArray[j] = r_hint_mc._currentframe;
    // the result is about 2200 - 2300
    // the result is about 2300 - 2500 in a MC!!!!
    // the result is about 2050 in a MCEvent
  }
  trace(getTimer()-testa);
};
/* 结论:
全局引用:
·在同一个时间轴下,不如传统引用
·在不同时间轴下(单独放到MC的时间轴),优越于传统引用
·在一个MC事件处理中(并不放到这个MC的时间轴中),不如传统引用
个人觉得第三种(即事件处理)在比较复杂的应用中最频繁用到,故也体现出全局变量的一些效率劣势,但是相比而言,程序的可维护性着实提高了。

时间: 2024-08-30 23:01:05

全局变量让你告别繁琐的路径的相关文章

Flash全局变量让你告别繁琐的路径

变量 有时候,有一些非常重要的MovieClip,比如一些操作信息的提示类型的MC(比如叫做"a"),需要不断的改变其属性,比如一个文本框.而这些改变又是由许多不同的MC或者Button的一些事件触发的,甚至,触发这些事件的Button和MC在很远的路径,要找到我们这个a,需要拐很多弯路.那么这时候,可以在a建立好了之后直接将a保存在一个全局变量中.注意,我们只是保存一个指向,而非一个MC实例.那么,以后再其他路径下对a的操作,则可以把繁琐的_parent.这些全部去掉了.(相关文章:

告别繁琐! Vista下快捷方式网络连接管理

有许 多人抱怨说http://www.aliyun.com/zixun/aggregation/15470.html">Vista中进入网络连接管理非常麻烦,没错,如果不熟悉的用户根本就很难找到.因为XP中通过开始菜单就能很方便的进入, 但是到了Vista中,你需要右击系统任务栏中的连接图标->网络共享中> 管理网络连接(左侧面板),如此才能进入. 下面就为大家介绍一个非常简便的进入方式,可以成为一键式.你所需要做的就是创建一个快捷方式: 在桌面新建一个快捷方式,输入: exp

动态加载图片路径 保持JavaScript控件的相对独立性_javascript技巧

当时考虑有三种方法: 1.直接把路径写在js文件里,但如果引用页面路径层级改变就没辙了. 2.写个class,放在主题包里的css文件或者单独创建一个css文件给日期控件专用.但是控件中的其他元素并没有使用class的需要,单独建立相应css文档似乎小题大做. 3.把以上两个方法排除后,自然要采用动态加载图片路径的方法咯. 关键代码如下: 复制代码 代码如下: //创建一个全局变量保存路径 var imgRootUrl = ""; //获取图片路径所在目录 var strPath=wi

2012运营趋势:中国移动发展最为严峻的一年

2012运营趋势·中国移动篇 大象赛跑 这将是中国移动发展最为严峻的一年. 2012年,来自内外部的竞争压力已经达到一个高潮:互联网产业不断越过通信的围墙,不仅威胁运营商的增值业务,还进一步蚕食话音短信等基础业务收入.从内部来看,通信行业用户增长进入存量时代.网络暂时无法适应流量爆发式增长需求.全业务转型开了个头,精细化运作迫在眉梢.队伍建设面临成立十余年最大挑战-- 前行的道路上,竞争是永恒的主题.为应对竞争压力,中国移动2012年深度转型已经从单纯的"数量"增长需求,转变为更加注重

360美化桌面软件简介

全新的桌面结构告别繁琐的快捷方式吧!360桌面将手机中所有的应用平铺于桌面之上,直观显示, 操作方便. 拒绝平庸,个性由我让安卓鄙视iPhone吧!我们提供丰富精美的皮肤,壁纸,特效等个性设置,让您手机的每天都不一样!          强大的操作体验早已厌烦"无法添加,无法拖放"了吗? 我们优化安卓系统的跨屏挤位操作,让您更加方便的排列应用图标和Widget部件.         更漂亮精致的界面没有iPhone也要有Retina的效果!更高精度的图标和壁纸,给眼睛更生动的享受,给手

2013最好用的刷机软件排行榜

  TOP1:刷机精灵 刷机精灵是一款运行于PC端的Android手机一键刷机软件,能够帮助用户在简短的流程内快速完成刷机升级.它能够帮您自动安装设备驱动.自动获取ROOT权限.自动刷入Clockworkmod Recovery以完成您的Android设备系统升级以及刷入第三方系统.您还可以通过刷机精灵内置的ROM市场找到适合于您设备的第三方系统. 功能特色: 1.智能安装驱动. 2.告别繁琐操作,只需鼠标轻点便可刷机. 3.云端下发刷机方案,安全可靠 刷机精灵,重装系统好用(8张). 4.一键

电脑店U盘启动盘制作工具

电脑店U盘启动盘制作工具3.2更新说明:1.调整细节及处理已知的问题 2.增加移动硬盘多分区升级支持 3.增加在U盘下自动创建GHO目录及说明 4.增加支持移动硬盘,保留原有的分区一键制作启动盘(注意:制作前请备份你的数据,以防万一) 5.增加识别程序是否在U盘里运行,避免把程序放在U盘上运行而使制作失败 6.更新内核FBINST模块,提高兼容性 7.优化PE智能安装器的自动选择盘符项,使之更加智能准确选择 8.增加在制作完成时调用电脑模拟器测试U盘的启动情况(只作测试U盘能否启动) 9.增加U

【更新链接】U盘启动制作工具(UDTOOL) v3.0.2014.0427

    [校验值]   文件: UDTOOLV3_Setup.exe大小: 525 MB版本: 3.0.2014.0427时间: 2014年4月27日MD5: 2E5187B7D9081E8A69B4DC45C830C5F8SHA1: 1D61C94708DD6ADA0421607D31605596981C99D2CRC32: 27D29836   [下载地址]http://pan.baidu.com/s/1sjJeWRb   [更新要点]   + v3.0  (1)制作日期:2014年4月27

安防中端传输设备-PoE交换机在2016的异军突起

随着网络监控摄像机技术的不断发展,视频监控传输系统的更新,现在星光级摄像机已经逐渐成为了监控行业的主流产品,同时也是今年安博会监控行业厂家参展的主要亮点,然而伴随着安防行业的高清化.网络化.智能化时代变革,PoE交换机的技术热点又是什么呢?也许有人会说长距离供电,又或者是PoE智能可视化管理.因为在"互联网+"时代.智能安防.转型升级等因素盛行安防行业的阶段,各个PoE交换机厂家都在绞尽脑汁地希望与"互联网+"扯上一丝半点关系,各种花俏博眼球招式都出来了.然而笔者认