0

在 Scout 中分析我的应用程序时,我注意到它表明JSONObject.internalPut方法负责分配 2,355 个 Dictionary 对象。

该方法的代码如下:

internal function internalPut(key:String, value:*):void {
    _map[key] = value;  // _map is a Dictionary 
}

我们该如何解释呢?

_map是在 JSONObject 的构造函数中创建的 Dictionary 对象,没有weakKeys 参数(即为假)

一个简单的字典[key]=value 可以分配任何东西吗?

谢谢你的帮助

埃亚尔

Scout 显示 internalPut 方法分配了 2,355 个字典对象

4

1 回答 1

0

所以事实证明,在 Flash/AS3 中,空的 Dictionary 或 Array 对象可能在第一次对象分配期间在内部创建它们自己的类的另一个实例,即在 Dictionary 上发生第一个“放置”操作或第一个“推送”命令时在 Array 上发生。

根据我的调查,这只会在这些集合对象之前被清除时发生(即它们有值,然后通过它们的“删除”或“拼接”调用清空)

希望能帮助到你,

埃亚尔

于 2016-06-21T12:51:59.663 回答