小试关联数组

来源:互联网 发布:悉知怎么用 编辑:程序博客网 时间:2024/06/06 00:56
var arr:Array = [0,1,2];
var obj:Object = {gold:"",coin:"",exp:""};
function arrToObj(oldArr:Array, oldObj:Object):Object
{
         var index:int = 0;
         for(var key:String in oldObj)
      {
             oldObj[key] = oldArr[index];
             index++;
        }
       return oldObj;
}
function test(initObj:Object)
{
    for(var key:String in initObj)
    {
             trace(key + ":" + initObj[key]);
    }
}
test(arrToObj(arr,obj));
然而测试下来obj里面的各个键值对应的属性值并不是数组arr里按照数组下标来赋的值,原来用for...in循环搜索出来的obj的键值不是按照顺序的,故赋值出错了,只有修改function arrToObj了
function arrToObj(oldArr:Array, oldObj:Object):Object
{
        oldObj.gold = oldArr[0];
        oldObj.coin= oldArr[1];
        oldObj.exp= oldArr[2];
         return oldObj;
}
这样才能达到对应键赋值的作用了...
原创粉丝点击