You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

如何无需if语句将Checkbox的checked布尔值转换为自定义值?求对应语法名称及实现示例

三元条件运算符:你的布尔值转自定义值解决方案

你提到的这个语法叫做三元条件运算符(也常被简称为三元运算符),它是JavaScript里专门用来简化简单if-else判断的简洁语法,刚好能满足你不想用if语句的需求。

你记忆里的写法方向是对的,但符号用错了——三元运算符的正确结构是:
条件 ? 条件为true时返回的值 : 条件为false时返回的值

针对你的使用场景,正确的实现代码应该是:

preferenceHotel = document.getElementById('preference-hotel').checked ? "yes" : "no";

简单拆解下这段代码的逻辑:

  • 先判断复选框的checked属性值(布尔类型)
  • 如果结果是true(复选框被勾选),就将"yes"赋值给preferenceHotel
  • 如果结果是false(复选框未勾选),就将"no"赋值给preferenceHotel

这样就能直接得到你想要的"yes"/"no"结果,完全不需要额外的if判断语句~

内容的提问来源于stack exchange,提问作者Sybrentjuhh

火山引擎 最新活动