Почему переменная не является функцией

387
07 сентября 2017, 20:29

В первом случае (закомментированом) все нормально работает, но когда пытаюсь присвоить переменной onReady функцию через сеттер, то в setTimeout пишет что это не функция. Почему так? Ведь я в обоих случаях присваиваю переменной функцию.

function CoffeeMachine(power, capacity) { 
 
  // var onReady = function() { 
  //     console.log( 'Кофе готов!' ); 
  //   } 
 
  var onReady; 
  this.set = function(f) { 
  		onReady = f; 
  }; 
 
  this.run = function() { 
    	setTimeout(onReady, 1000); 
  }; 
} 
 
var coffeeMachine = new CoffeeMachine(20000, 500); 
coffeeMachine.run(); 
 
coffeeMachine.set(function() { 
  console.log( 'Готов кофе' ); 
});

READ ALSO
return не возвращает нужное значение

return не возвращает нужное значение

Функция считает сколько раз нужно умножить цифры числа друг на друга чтобы получить одну цифруВсё работает, но возвращаемая переменная в console

274
Ошибки модуля jsdom при запуске файла на nodejs

Ошибки модуля jsdom при запуске файла на nodejs

Всем привет! Помогите пожалуйста разобратьсяПри запуске js файла в консоли возникают следующие ошибки (jsdom 11

293
В чём разница между var obj{} и var obj[]?

В чём разница между var obj{} и var obj[]?

Ведь и то, и то массив, но разница есть

351
Объясните значение кода

Объясните значение кода

Добрый деньНезнакомый человек пытался скинуть резюме в файле

319