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

如何简化含重复三元运算符的JavaScript代码?能否分组优化?

优化方案

方案1:直接校验哈希格式(最简洁)

原代码里linkID和modalURL值完全一致,且仅需在哈希匹配#link-1至#link-5时执行函数,可通过正则校验格式后直接调用:

const modalURL = window.location.hash;
// 匹配#link-1到#link-5的格式
if (/^#link-[1-5]$/.test(modalURL)) {
  showModal(modalURL);
}

方案2:白名单列表校验

如果后续需要调整合法哈希值,用数组维护白名单会更灵活:

const modalURL = window.location.hash;
const validLinks = ['#link-1', '#link-2', '#link-3', '#link-4', '#link-5'];

if (validLinks.includes(modalURL)) {
  showModal(modalURL);
}

补充说明

原代码的三元运算符写法存在冗余:(linkID = "#link-1") + showModal(linkID) 会无意义地拼接赋值结果与函数返回值,实际上你完全不需要额外赋值linkID,直接传入modalURL即可完成需求。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.02 22:55:56