我正在使用AS3中的一个数组,默认情况下这个数组是稀疏的。我创建一个数组,并在给定的位置向它添加一个值。我取消它在那个索引上的内容。它保留该索引值,但使内容无效。问题是长度仍然是一样的。是否有办法在不修改任何其他索引的情况下实际删除该索引?
ex:
array:Array = new Array();
array[ 7 ] = new Array();
array[ 16 ] = new Array();
array[ 16 ] = null;编辑:我希望数组尽可能小,以便在上面的示例中,数组可以跟踪到长度7。
发布于 2009-07-01 01:43:15
用删除操作符 ..。尽管如此,长度将保持8 .将key 7的值设置为null仍然意味着键7有一个值,因为Array可能包含任何值,包括null。如果您真的使用稀疏数组,那么请考虑使用flash.utils::Dictionary .如果关键订单重要,那就去调查flash.utils::Proxy .或者创建一些数据结构,它不使用数组访问,而是有一些getVal和setVal方法.
格列茨
back2dos
发布于 2009-07-01 01:33:23
尝尝这个
array.splice(7,1)拼接()
https://stackoverflow.com/questions/1066894
复制相似问题