OpenFL中的“Map iterator不是函数”

问题描述 投票:1回答:1

我正在构建我的Windows项目,一切正常。现在我开始在HTML5中构建它,我收到了地图迭代器的错误:

for (entryMap in mapStruct.map)
{
    var array:Array<Dynamic> = entryMap;
    var keyObj = getJSONField(array[0], mapStruct.keyType);
    var valueObj = getJSONField(array[1], mapStruct.valueType);

    map.set(keyObj, valueObj);
}

我收到这个错误:

异常名称:TypeError:mapStruct.map.iterator不是函数

我的项目适用于Windows,但我不知道该怎么做,我需要使用这样的地图。

iterator haxe openfl
1个回答
1
投票

我试图猜测mapStruct是什么而没有任何成功。看起来你没有以正确的方式在地图上循环......让我们看一些例子:

var map = ["hello" => 1, "world" => 4];

for (value in map)
{
    trace('value: $value');
}

收益:

value: 1
value: 4

在这里你有link在线尝试。

另一方面,如果要获取键和值,则应以这种方式迭代:

var map = ["hello" => 1, "world" => 4];

for (key in map.keys())
{
    trace('key: $key value: ${map[key]}');
}

*注意keys方法调用

它返回:

key: hello value: 1
key: world value: 4

这是'尝试Haxe'link

如果我知道mapStruct是哪种类型,我可能会帮助你更多

© www.soinside.com 2019 - 2024. All rights reserved.