Разобрать логику функции
Есть функция, загружаю изображение через инпут и тут же вывожу эту картинку, но ни как не могу понять, как она работает (под цифрами буду писать вопросы):
<script type="text/javascript">
function fch(f) { //(1) почему в аргументе передаётся f и откуда она вообще взялась?
var fls = f.files; // (2)f оказывается объект...но мы же нигде не создавали объект?
if (!fls || !fls.length || !FileReader) { (3)// тут более менее, если это не true.... но что такое FileReader?
return;
}
var fr = new FileReader(); //создаём объект
fr.onload = function() { // добавляем свойство
var im = new Image();
im.src = this.result;
var d = document.getElementById('imgp');
d.replaceChild(im, d.firstChild);
};
fr.readAsDataURL(fls[0]);
}
</script>
<input type="file" />
<div id="imgp">img</div>
Источник: Stack Overflow на русском