actionscript数组问题

时间:2010-06-07 04:38:30

标签: actionscript-3

var array1:Array = new Array();
var array2:Array = new Array();

var obj1:Object = new Object();

array1.push(obj1);
array2.push(obj1);


if i change something in obj1 will array1[0] and array2[0] also change?

3 个答案:

答案 0 :(得分:0)

是。在ActionScript 3.0中,所有参数都通过引用传递。因此,您将obj1的引用传递到两个数组。更改对象中的值将反映在array1和array2中。

答案 1 :(得分:0)

是肯定的。它会改变。

答案 2 :(得分:0)

您有两个列表,两个列表都存储了班级中学生的姓名 - 例如,一个按字母顺序存储,另一个按年龄顺序存储。如果学生清除了一个考试,那么两个列表中的相应学生是否清除了考试或仅考试其中一个?

两者都指的是同一个学生 - 同一个学生Object

现在说你从他的答卷到一些论文写下了学生的记号。如果学生删除并更新该论文的价值,他的真实标记会改变吗?不,因为那只是商标的复制值。这类似于将student.mark复制到数字变量并进行更改。