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

如何修改单行if-else(三目运算符)实现同时返回两个变量值

问题分析与修改方案

原有三目运算符代码:

("string" != "string") ? (article = '-' , contact_info = '-') : (article = '' , contact_info = '')

原代码分支中使用了逗号表达式,执行时会先后完成两个变量的赋值,但整个分支表达式最终仅会返回最后一个赋值语句的结果,你目前拿到的数组是外部对两个变量单独合并的结果,无法直接通过该三目运算同时返回两个值。

调整方案

方案1:数组解构赋值(最常用)

直接在三目运算中返回数组,再通过解构一次性给两个变量赋值:

const [article, contact_info] = "string" != "string" ? ['-', '-'] : ['', ''];

该写法执行后article和contact_info会直接被赋予对应的值,不需要额外处理。

方案2:对象解构赋值(适合变量多、易混淆的场景)

如果需要明确变量对应关系,也可以返回对象后解构:

const {article, contact_info} = "string" != "string" 
  ? {article: '-', contact_info: '-'} 
  : {article: '', contact_info: ''};

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.06 12:24:03