Как можно установить свойство объекта JavaScript как функцию, например FileReader.onload? - PullRequest
0 голосов
/ 04 марта 2020

Я изучаю JS и получаю тупой пример кода из MDN .

// Callback from a <input type="file" onchange="onChange(event)">
function onChange(event) {
  var file = event.target.files[0];
  var reader = new FileReader();
  reader.onload = function(e) {
    // The file's text will be printed here
    console.log(e.target.result)
  };

  reader.readAsText(file);
}

Насколько я понимаю, свойство объекта является значением, например

var car = {brand: "Honda"} 

Так что же означает код ниже?

reader.onload = function(e) {
    // The file's text will be printed here
    console.log(e.target.result)
  };

Я прочитал MDN

Свойство FileReader.onload содержит обработчик событий, выполняемый при запуске события загрузки,

но это не имеет смысла для меня.

1 Ответ

1 голос
/ 04 марта 2020

Свойство объекта также может быть функцией, которую можно вызывать с точечной нотацией. В вашем примере

reader.onload(paramsData)

вызовет функцию с paramsData в качестве аргумента.

Я предлагаю вам изучить книги или лекции Крокфорда по JavaScript. Вот один пример: Акт III: Функция Предельного: https://www.youtube.com/watch?v=ya4UHuXNygM

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...