我有一个对象数组,它使用分隔字符串作为键。在 FB4 调试器中检查时,键如下所示:
[+] 22477◦25220◦20.1 [+] 22477◦25220◦20.6 [+] 22477◦25220◦20.8 [+] 22477◦25244◦55.1K(j)
前两项是数字(转换为字符串),但多部分分隔键中的第三项自然是字符串——它就像一个字母数字库架参考。正如预期的那样,当您单击调试器中的 [+] 图标时,您可以查看与该字符串键关联的对象。到现在为止还挺好。
调试器按(预排序)将键添加到数组中的顺序显示键。但是,当迭代对象数组时:
for (var key: MyAssociativeArray 中的字符串){ // 访问键的顺序不是调试器显示的顺序 }
密钥以其他顺序返回——内部哈希?我的问题是,调试器如何知道添加键的顺序,并且在迭代数组时我可以在运行时访问这些知识吗?我想按添加对象的顺序迭代对象。或者我是否需要维护我自己的这些键的索引,以显示它们添加到关联数组的顺序?
[0] 22477◦25220◦20.1 [1] 22477◦25220◦20.6 [2] 22477◦25220◦20.8 [3] 22477◦25244◦55.1K(j)
谢谢