// Modifying an array returned by mapiter.next() does not modify the Map. | |
load(libdir + "iteration.js"); | |
var map = new Map([['a', 1]]); | |
var res = map[Symbol.iterator]().next(); | |
assertIteratorResult(res, ['a', 1], false); | |
res.value[0] = 'b'; | |
res.value[1] = 2; | |
assertIteratorResult(res, ['b', 2], false); | |
assertEq(map.get('a'), 1); | |
assertEq(map.has('b'), false); | |
assertEq(map.size, 1); |