2012-04-05 67 views
0

鄉親, 我有一個關於在Flex中爲我的現有對象添加額外的名稱/值對的問題;如何在現有的柔性對象中添加額外的名稱/值對

我有對象類型 的object1和我宣佈一個新的對象2 = object1再加上一些額外的名稱 - 值對, 是有辦法的新名稱 - 值對附加到現有的對象?

非常感謝,

回答

0

如果我正確理解你的問題,是Object2的引用指針object1;因此,改變Object2的影響object1:

package 
{ 
    import flash.display.Sprite; 

    public class X extends Sprite 
    { 
     public function X() 
     { 
      var object1:Object = {a: "1", b: "2"}; 

      var object2:Object = object1; 

      object2.c = 3; 

      trace("Object 2:"); 
      for (var name:String in object2) 
      { 
       trace("Name: " + name + " = " + object2[name]); 
      } 

      trace("Object 1:"); 
      for (var name:String in object1) 
      { 
       trace("Name: " + name + " = " + object1[name]); 
      } 
     } 
    } 
} 

...它輸出:

Object 2: 
Name: a = 1 
Name: c = 3 
Name: b = 2 
Object 1: 
Name: a = 1 
Name: c = 3 
Name: b = 2 

如果你問一個對象或動態類是否可以被克隆,你可以使用這樣的功能:

public function cloneObject(object:Object):Object 
{ 
    var newObject:Object = {}; 

    for (var name:String in object) 
    { 
     newObject[name] = object[name]; 
    } 

    return newObject; 
} 
相關問題