У меня возникли проблемы с пониманием того, как этот цикл for завершается в JavaScript:
var files = ["A", "B"];
for (var i = 0, f; f = files[i]; i++) {
console.log(f);
}
При запуске он отображает A и B на экране, но почему f = файлы [2] завершают цикл? Если я запустил f=files[2]
в моей консоли, я получаю ответ "undefined", так что же объясняет тот факт, что это должно закончиться циклом?
Бонусный вопрос: Почему бы не написать цикл вместо следующего?
for (var i=0; i < files.length; i++) {
f = files[i];
console.log(f);
}
Это кажется более ясным и более удобным для меня, поэтому есть ли какая-то причина, что первая часть кода будет использоваться во втором?