Почему между typeof Function.prototype и typeof Fn.prototype различаются?
function Fn() {} typeof Function // 'function' typeof Fn // 'function' typeof Function.prototype // 'function' typeof Fn.prototype // 'object'
это очень смущает меня
Прототип функции будет простым, пустым объектом, если что-то не будет сделано, чтобы изменить это.
Вы (автор функции Fn) ничего не изменили, когда создали Fn функция.
Fn
Авторы функции Function устанавливают другое значение в качестве прототипа.
Function