为了账号安全,请及时绑定邮箱和手机立即绑定

三元运算符在 JS 中无法正常工作

三元运算符在 JS 中无法正常工作

30秒到达战场 2021-12-12 18:03:33
我正在运行以下代码并得到意想不到的结果:var a = 1, b =2 ,c = 3;  console.log(5*a+ b>0?b:c);预期结果是:7 但得到 2。
查看完整描述

1 回答

?
慕姐4208626

TA贡献1852条经验 获得超7个赞

您的代码具有正确的概念,但执行错误。三元正在正确地完成它的工作。


目前,您的代码正在执行如下:


const a = 1

const b = 2

const c = 3


// This will evaluate to true, since 5 * 1 + 2 = 7, and 7 is greater than 0

if (5 * a + b > 0) { 

  // So return b

  console.log(b)

} else {

  console.log(c)

}


您应该使用括号来分隔三元:


const a = 1

const b = 2

const c = 3


console.log(5 * a + (b > 0 ? b : c));


查看完整回答
反对 回复 2021-12-12
  • 1 回答
  • 0 关注
  • 261 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信