for-let trap
var a = []; for each(let i in '123') a.push(function() i); [f() for each(f in a)] // => ["3", "3", "3"]
["1", "2", "3"]
となりそうでならない。
for(let k in o); // ↓ The scope of for-let lies *out* of the loop block. { let k; for(k in o); }
var a = []; for each(let i in '123') let(i = i) a.push(function() i); [f() for each(f in a)] // => ["1", "2", "3"]
つらい。