以下代码输出行是控制台中未定义的词。我该如何删除?我对编程很陌生。
输出:
您睡眠不足 未定义
代码:
function getSleepHours(day) {
if (day === 'monday') {
return 8;
} else if (day === 'tuesday') {
return 8;
} else if (day === 'wednesday') {
return 8;
} else if (day === 'thursday') {
return 8;
} else if (day === 'friday') {
return 8;
} else if (day === 'saturday') {
return 8;
} else if (day === 'sunday') {
return 5;
}
}
const getActualSleepHours = () =>
getSleepHours('monday') +
getSleepHours('tuesday') +
getSleepHours('wednesday') +
getSleepHours('thursday') +
getSleepHours('friday') +
getSleepHours('saturday') +
getSleepHours('sunday');
const idealSleepHours = 56;
let let2 = getActualSleepHours();
function calculateSleepDebt() {
if (let2 >= idealSleepHours) {
console.log('You are getting sound sleep');
} else {
console.log('You are not getting enough sleep');
}
}
console.log(calculateSleepDebt()
答案 0 :(得分:2)
如果要在console.log中调用calculateSleepDebt(),则它应返回可打印的实例
function calculateSleepDebt() {
if (let2 >= idealSleepHours) {
return 'You are getting sound sleep';
} else {
return 'You are not getting enough sleep';
}
}
如果您不想更改calculateSleepDebt(),请替换
console.log(calculateSleepDebt()
使用
calculateSleepDebt()
这里发生了什么,对calculateSleepDebt()的调用记录了您想要的句子,但是该函数没有返回任何内容
console.log(calculateSleepDebt()
未定义的日志。
答案 1 :(得分:1)
您不必第二次运行console.log()
,而已在calculateSleepDebt()
函数中运行了它。因此,基本上,您要告诉浏览器在日志中记录某些内容,这会导致未定义的部分。
您只需调用函数calculateSleepDebt()
,它将打印到控制台本身。因此,代码的最后一行应该只是calculateSleepDebt()
,而不是console.log(calculateSleepDebt()
(顺便说一句,您在这里错过了);
)