JavaScript Функция и console.log()

Почему два подобных экземпляра кода, которые, по логике, должны иметь одинаковые исходные результаты, дают разные исходные результаты?

function rectangleArea(width, height) {
 console.log(width * height);
}

rectangleArea(5, 7) 
//Output 35

и

function rectangleArea(width, height) {
 console.log(width * height);
}

console.log(rectangleArea(5, 7))
// prints 35 и undefined 

Ответы (1 шт):

Автор решения: Алексей Шиманский

Функция, которая не возвращает ничего, на самом деле по умолчанию возвращает undefined. Так что во втором примере консоль в виде возвращаемого значения получает его и выводит.

Если надо результат напечатать в консоли, то надо этот результат вернуть из функции. А этим занимается ключевое слово return (что в переводе с английского будет "вернуть"), а не console.log

→ Ссылка