`
dcriori
  • 浏览: 97140 次
社区版块
存档分类
最新评论

as 的值传递及克隆

    博客分类:
  • Flex
阅读更多
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" applicationComplete="initApp();">
	<mx:Script>
		<![CDATA[
		private var arr:Array 
		private function initApp():void{
			arr =  new Array(13,3,89,5,2,7,89);
			arr.sort(Array.DESCENDING | Array.NUMERIC);
			list1.dataProvider = arr;
			var arr2:Array = arr;
			lbl.text = lbl.text + arr2.toString();
		}
			
		 private function clone(source:Object):*
         {
                var myBA:ByteArray = new ByteArray();
                myBA.writeObject(source);
                myBA.position = 0;
                return(myBA.readObject());
         }
		
	
		private function onClick2():void{
			var arr2:Array = this.clone(arr);
			arr2.reverse();
			list2.dataProvider = arr2;
		}
		
		private function onClick3():void{
			var arr3:Array = arr;
			arr3.reverse();
			list3.dataProvider = arr3;
			list1.dataProvider = arr;
		}
		]]>
	</mx:Script>
	<mx:VBox>
		
		<mx:ControlBar id="cb" horizontalGap="1">
			<mx:Button id="B" label="A2" click="onClick2();"/>
			<mx:Button id="C" label="A3" click="onClick3();"/>
		</mx:ControlBar>
		<mx:Label id="lbl" text="原始数组为:"/>
		<mx:HBox>
			<mx:List id="list1"  width="100" height="200"/>
			<mx:List id="list2" width="100" height="200"/>
			<mx:List id="list3" width="100" height="200"/>
		</mx:HBox>
	</mx:VBox>
</mx:Application>

  上面的代码中主要使用下面的方法处理clone问题:

 private function clone(source:Object):*  
 {  
      var myBA:ByteArray = new ByteArray();  
      myBA.writeObject(source);  
      myBA.position = 0;  
      return(myBA.readObject());  
 }  
 

 

分享到:
评论

相关推荐

    AS3常用英语单词大全

    【AS3常用英语单词大全】是针对ActionScript 3.0编程语言的学习资源,包含了AS3中常见的英文词汇及其解释。ActionScript 3.0是一种广泛应用于开发Flash平台应用程序、游戏和富互联网应用的脚本语言。以下是一些重要...

    javascript克隆对象深度介绍

    基本类型包括`undefined`、`null`、`boolean`、`string`、`number`,它们是按值传递的。这意味着当你将这些类型的值赋给新变量时,会创建一个新的存储位置并复制值。而引用类型,如数组和对象,是按引用传递的,也...

    深入理解python特性1

    2.4 下划线、双下划线及其他:在Python中,下划线和双下划线是用于命名变量和函数的特殊符号。前置单下划线表示private变量,后置单下划线表示特殊变量,前置双下划线表示私有变量,双下划线表示特殊变量。 2.5 ...

    R.asne:A-tSNE for R

    R.asne,R的A-tSNE 定义中的近似tSNE: Pezzotti,N.,Lelieveldt,BP,van der Maaten,L.,Höllt,T.,Eisemann,E.,&Vilanova,A.(2017年)。 近似和用户可控制的tSNE,用于进行渐进式可视化分析。 IEEE...

    Actionscript3.0开发人员指南

    还可以通过传递具体的年月日参数来创建特定日期的对象: ```as3 var specificDate:Date = new Date(2023, 11, 1); ``` 需要注意的是,月份是从0开始计数的,即0代表1月。 **控制时间间隔** 为了精确地控制时间和...

    flash CS3.0事例

    1. **Arrays**:在AS3(ActionScript 3.0)中,数组是一种数据结构,用于存储多个同类型的值。学习如何创建、操作和遍历数组是AS3编程的基础,例如`push()`, `pop()`, `shift()`, `unshift()`等方法。 2. **...

    Gostack11-Desafio-ReactJS:GoFinanças

    基于提供的压缩包子文件的文件名称 "Gostack11-Desafio-ReactJS-master",我们可以假设这是一个Git仓库的克隆,其中包含项目的主要源代码和可能的资源文件。"master"分支通常代表项目的主线代码。 以下是可能涉及的...

    Launcher2_AS:Android5.0原始码中的launcher2,略微修改,逐步可在模拟器中运行-修改

    1. **克隆项目**: 下载`Launcher2_AS`的源代码。 2. **导入Android Studio**: 使用Android Studio打开项目,确保所有依赖已正确配置。 3. **编译和运行**: 编译项目并部署到Android模拟器或物理设备。 4. **调试和...

    VB.NET的DataTable常用方法总结

    这是最基本的添加新行的方式,可以通过传递参数来直接设置新行各列的值。 2. **`DataTable.Rows.InsertAt(DataRow, Position)`** 使用此方法可以将新创建的数据行插入到指定位置,其中`Position`参数表示插入的...

    提高C#编程水平的50个要点

    - **实践建议**:使用委托作为回调机制,可以更加灵活地传递方法引用。 #### 22. 用事件(event)来定义外部接口 - **解释**:事件提供了一种发布和订阅机制。 - **实践建议**:使用事件来通知外部对象发生的特定事件...

    ActionScript3.0开发人员指南

    - **指定着色器输入和参数值**:指导如何为着色器指定输入数据和参数值,以及如何传递动态数据。 - **使用着色器**:详细解释如何在AS3中调用PixelBender着色器,以及如何将处理结果应用到显示对象上。 #### 第16章...

    asp-fe:分屏聊天界面项目

    克隆存储库: git clone https://github.com/connorrowland/ASAPP-Frontend-Challenge.git 。 安装应用程序依赖项: npm install 。 运行npm start以启动开发服务器。 该项目将在http://localhost:3000 。

    Go-astiencoder-用GO编写的开源视频编码器基于ffmpegC绑定

    4. **Go的包管理与构建**:项目中的`go-astiencoder-master`可能是一个GitHub仓库的克隆,通常包含`main`包(程序入口)、`internal`包(内部私有实现)、`cmd`包(命令行工具)以及`vendor`目录(第三方依赖)。...

    50个要点帮你提高C#编程水平

    实现ICloneable:对象的克隆 `ICloneable`接口允许对象创建自身的副本,这对于需要快速复制对象而不改变原始对象状态的场景非常有用。 ### 28. 类型转换:类型兼容性 理解和正确使用类型转换对于确保代码的类型...

    madmimi-gem:gem install madmimi-然后发送电子邮件,跟踪统计信息并轻松管理您的订户基础...以及所有您所熟悉和喜爱的Ruby语法!

    或者,如果您希望生活在边缘,只需克隆此存储库并从头开始构建即可。 依赖关系 active_support(我打算在不久的将来删除它,并构建自己的实现。) 基本用法 mimi = MadMimi . new ( 'emailaddress' , 'api_key' )...

    EffectiveC#中文版

    - 使用委托可以轻松地传递和执行回调函数。 22. **用事件定义对外接口** - 事件是通知其他对象某些事情发生的一种机制。 - 定义事件可以提供一种更清晰的方式来处理异步操作的结果。 23. **避免返回内部类对象...

    开源项目-travis-ci-travis-ci.zip

    描述中提到的“Go 1.10 is parsed as 1.1 if not passed as strings”是一个特定的版本解析问题。在Travis CI中,如果不以字符串形式传递Go版本号,可能会导致Go 1.10被误识别为1.1。为了避免这种问题,需要在....

Global site tag (gtag.js) - Google Analytics