imo, если это ваш реальный код, о котором вы забыли return в реализации greet
:
function greet(person: IPerson) {
return (person.getGreeting("Zammetti"));
}
, так что, в основном, если функция ничего не возвращает на самом деле в мире javascript, она возвращает undefined
, и именно поэтому вызов console.log(greet(...))
действовал таким образом
и отвечал на ваш второй вопрос:
alert
работал по той же причине, что console.log
не был
alert
является частью Web API
https://developer.mozilla.org/en-US/docs/Web/API/Window/alert (одна из самых ранних вещей в этом языке, я считаю, поэтому он настолько прост и существует в глобальном масштабе)