ECMAScript-6 icon indicating copy to clipboard operation
ECMAScript-6 copied to clipboard

Map.delete called while iterating

Open Yaffle opened this issue 11 years ago • 1 comments

see new ES draft about iteration and "delete"/"set"...

Yaffle avatar Oct 13 '12 10:10 Yaffle

test case:

(function () {
  var s = [];
  var value = 42;
  var map = new Map();
  map.set(0, value);
  map.set(1, value);
  map.set(2, value);
  map.set(3, value);
  map.delete(1);
  map.forEach(function (value, key) {
    s.push(key);
    if (key === 0) {
      map.delete(0);
      map.delete(2);
      map.set(4);
    }
  });
  alert(s.join(""));//should alert 034
}(self));

Yaffle avatar Aug 14 '13 09:08 Yaffle