В цикле for
вы можете иметь несколько инициализаторов, разделенных запятыми.Вот что у вас там в сочетании с ленивым (и вводящим в заблуждение) var
.В данном конкретном случае это эквивалентно:
function FileSelectHandler(e) {
var i, f, files;
// cancel event and hover styling
FileDragHover(e);
// fetch FileList object
files = e.target.files || e.dataTransfer.files;
// process all File objects
for (i = 0; f = files[i]; i++) {
ParseFile(f);
}
}
... потому что var
- это , неправильно понятый в JavaScript.Но, вероятно, лучшим примером использования нескольких инициализаторов будет:
var a = [1, 2, 3], index, len;
for (index = 0, len = a.length; index < len; ++index) {
// Do something with a[index]
}
Там, с удаленным вводящим в заблуждение var
, мы можем видеть, что в начале оператора for
есть два различных инициализатора.