为什么console.log在正确输出后返回undefined?

时间:2019-09-25 21:49:47

标签: javascript

我正在编写一个非常简单的JS函数,想知道控制台在正确记录每个函数调用后返回“ undefined”是正常的还是由于函数编写错误而导致的错误。

const getWeather = function(country, weatherType) {
    console.log('The weather in ' + country + ' is ' + weatherType + '.');
}

console.log(getWeather('Scotland', 'sunny'));
console.log(getWeather('Japan', 'beautiful'));
console.log(getWeather('Germany', 'frosty'));

1 个答案:

答案 0 :(得分:0)

就像其他评论者所说的那样,console.log不返回任何内容,因此结果总是 未定义。看起来您实际上是想从函数中返回生成的字符串,然后将其记录下来。请尝试以下操作:

const getWeather = function(country, weatherType) {
    return 'The weather in ' + country + ' is ' + weatherType + '.';
}

console.log(getWeather('Scotland', 'sunny')); // The weather in Scotland is sunny.
console.log(getWeather('Japan', 'beautiful')); // The weather in Japan is beautiful.
console.log(getWeather('Germany', 'frosty')); // The weather in Germany is frosty.

原始代码中发生的事情是调用函数并将消息记录在其中。您的函数没有返回任何内容,因此当您尝试记录该函数的输出时,您正在记录 undefined