如果我用 if else 构造编写函数表达式
const plantNeedsWater = function (day) {
if (day === 'Wednesday') {
return (true)
} else {
return(false)
}
}
console.log(plantNeedsWater('Tuesday'))
// return false
然后一切顺利,但如果我使用三元运算符
const plantNeedsWater = function (day) {
day === 'Wednesday' ? console.log(true) : console.log(false)
}
console.log(plantNeedsWater('Tuesday'))
然后显示错误,怎么回事?
问题是对三元运算符的错误转换。
值得注意的是,初始函数返回一个值,而带有三元运算符的版本本身显示日志。
所以你需要改变功能
或者改变对这个函数的调用
因为函数中没有三元组,
return并且由于某种原因使用了不必要的控制台日志