Кто-нибудь знает почему такое интересное поведение let в for? Обычно ведь нам говорят что на каждый цикл как буд-то создаётся новая переменная, но на деле это не так.
Конечно в реальном коде такое вряд-ли будут писать, но с точки зрения как оно работает - интересно.
const arr = []
for (let i = { b: 0 }; i.b < 3; i.b++) {
arr.push(i)
}
arr[0] === arr[1]