使用ts时,Map的Keys用for of 迭代报错,代码在浏览器里面可以运行,cocos里面报错

如题,使用ts时,Map的Keys用for of 迭代报错,代码在浏览器里面可以运行,但是在cocos里面运行没有任何效果

这是代码:

let map=new Map([
[‘ac’,‘abc’],
[‘df’,‘def’],
[‘hg’,‘hjg’]
]);
console.log(map);
let arr=map.keys();

    for(let value of arr){
        console.log('key value:',value,'map value:',map[value])
    }
    for(let key in map){
        console.log('key:',key,'value:',map[key])
    }

这是运行的效果:

这是把这段代码单独复制到浏览器里面运行的结果:

更新一下,解决了,map的keys是迭代器类型,不是数组。我还是转成数组处理吧,贴下代码:
test(){
// let map=new Map([
// [‘ac’,‘abc’],
// [‘df’,‘def’],
// [‘hg’,‘hjg’]
// ]);

        let map:Map<string, string> =new Map([
            ['ac','abc'],
            ['df','def'],
            ['hg','hjg']
            ]);

        console.log(map);
        let arr=(map.keys() as any)as Array<string>;
        console.warn('arr:',arr);
        for(let value of arr){
            console.log('key value:',value,'map value:',map[value])
        }
        for(let key in map){
            console.log('key:',key,'value:',map[key])
        }
        let list=[];
        map.forEach((value,key)=>{
            console.log('value:',value,'key:',key);
            list.push([key,value]);
        });
        console.log('list:',list);
        let newMap=new Map(list);
        console.log('new map:',newMap);
        let jsonText=JSON.stringify(list);
        let jsonMap=new Map(JSON.parse(jsonText));
        console.log('jsonMap:',jsonMap); 
    }

运行结果:

这是我的ts 项目配置,用的es2018:

貌似 creator 不支持 es6的 Map ?

不支持
https://docs.cocos.com/creator/manual/zh/scripting/reference/javascript-support.html