在Actionscript 3中,我读到任何不是主要的东西都是通过引用而且灵长类动物是通过值引用的。我相信一个对象是一个主要的,它是由值引用的吗?
例如,如果我创建
//Symbol class (not a primative)
var symbol:Symbol = new Symbol();
symbol.color = 0xFFFFFF;
var obj:Object = new Object();
obj.symbol = symbol
symbol.color = 0x000000; //change the original symbol color
trace(obj.symbol.color.toString()) //display color of symbol in obj
这会返回0xFFFFFF还是0x000000?
答案 0 :(得分:1)
“原语”基本上是指整数或字符串。我不记得我的头顶是否只是整数,但其他一切都是参考。
您可以尝试运行的简单测试代码:
var spr:Sprite = new Sprite();
var obj:Object = {spr:spr};
var other:Object = {obj:obj};
spr.x = 100;
trace(other.obj.spr.x);
跟踪100,而不是0。