Функции в JS возвращают undefined, если не указано обратное.
https://jsfiddle.net/wbrapist/c3xfr9bc/
Прошёл по ссылке:
But the two are different. A function value can do all the things that other values can do—you can use it in arbitrary expressions, not just call it. It is possible to store a function value in a new place, pass it as an argument to a function, and so on. Similarly, a variable that holds a function is still just a regular variable and can be assigned a new value
Но typeof считает, что функция :) Разница конечно есть.