Прошу помочь новичку в JS
Изучаю JS самостоятельно, столкнулся с примером по которому нет понимания может знающий человек подскажет.
function test() {
let a = 0;
return function newTest() {
return ++a;
};
}
let znach = test();
console.log(znach())
Вопрос такой почему, код выше работает нормально и печатет значение 1. А код ниже не работает и выдает значение [Function: newTest], хотя как по мне и в первом и во втором случае вызов функции test равнозначный.
function test() {
let a = 0;
return function newTest() {
return ++a;
};
}
console.log(test())
Источник: Stack Overflow на русском