You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

将函数作为if条件参数的执行逻辑及结果疑问

问题解答
  • greet函数确实被调用了:你看到控制台输出Hello,就是greet函数执行的直接结果,说明它已经被成功调用。

  • console.log('Hi')未执行的原因:
    JavaScript里,函数如果没有用return语句指定返回值,默认会返回undefined。而if语句的判断条件会把值转换成布尔值,undefined属于假值(falsy values),所以if(greet())的条件结果是false,自然不会执行大括号里的代码。

如果想让Hi也输出,你可以给greet函数加一个返回真值的语句,比如:

function greet() {
    console.log('Hello')
    return true; // 显式返回真值
}

if(greet()){
    console.log('Hi')
}

这样执行时就会先输出Hello,再输出Hi。

内容的提问来源于stack exchange,提问作者Isa Seferović

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.19 16:31:36