2017-02-12 19 views
0

Microsoft Edgeで 'for-of'のECMAScript 6ループに問題があるようです。 SCRIPT1010:期待される識別子Microsoft Edgeで 'for-of'のECMAScript 6ループ

例えば以下のコードで:

var myMap = new Map(); 
 
myMap.set(0, 'zero'); 
 
myMap.set(1, 'one'); 
 
    
 
for (var [key, value] of myMap.entries()) { 
 
    console.log(key + ' = ' + value); 
 
}

コードの一部I [キー、値]対とループ、エッジがこのエラーを返す実際に 、からですhttps://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Map#Iterating_Maps_with_for..of

私はそれをテストするためにエッジ25.10586.0.0を使用します。

+9

最初の? – havenchyk

+1

待ち、myMapとは何ですか?) – havenchyk

+0

ここでMicrosoft Edge 38.14393.0.0で正常に動作するようです:https://jsfiddle.net/jfriend00/cu1gfgy6/ – jfriend00

答えて

0

ループの[キー、値]のペアが古いバージョンのMicrosoft Edge(< = 25.10586)でエラーを返すことがわかりました。 それはこのように代わりに配列を使用する必要があります:あなたが使用しているエッジのどのバージョン全ての

var myMap = new Map(); 
 
myMap.set(0, 'zero'); 
 
myMap.set(1, 'one'); 
 

 
for(var pair of myMap.entries()) { 
 
    console.log(pair[0]+ ', '+ pair[1]); 
 
}

+0

これはMicrosoft Edge 38.14393.0.0で完璧に動作します。私のjsFiddle(16時間前に掲載)が示すとおりです。したがって、あなたは読んだコードで何か違うことをやっているのですか、古いバージョンのEdgeを持っていますか?これは一般的なEdgeまたはES6の問題ではありません。 – jfriend00

+0

はい、それは私のバージョンのEdge(25.10586.0.0)に本当に問題があるようです –

関連する問題