我从数组数组中删除一个数组到一个空数组
var _open:Array = [[x, y]];
var _closed:Array = [];
_closed.push(_open.splice(0, 1));
这给我留下了数组 _closed 是:
[[[x, y]]]
有谁知道为什么?因为如果我在不使用拼接功能的情况下推动某些东西,我会得到我所期望的,没有额外的嵌套。例如:
_closed.push([8,13]);
// _closed is [[8,13]]
顺便说一句,AS3 中的跟踪(主要是数组)会变得非常烦人,所以我使用这个函数来了解数组中是否存在一些嵌套:
public static function traceArray(aArray:Array):void
{
for (var t:Object in aArray) {
trace(t + " : " + aArray[t]);
if (typeof(aArray[t]) == "object") {
traceArray(aArray[t]);
}
}
trace();
}