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

JavaScript中如何修改映射取值函数实现includes()模糊匹配效果

解决方案

你只需要遍历映射对象的键,逐一用includes判断传入字符串是否包含对应子串,匹配到就返回对应值即可,同时保持和原getData一致的优先匹配第一个命中规则、无匹配返回undefined的行为:

function getDataMapp(str) {
  const mapp = {
    '12/': 'one',
    '13/': 'two',
  };

  for (const matchKey of Object.keys(mapp)) {
    if (str.includes(matchKey)) {
      return mapp[matchKey];
    }
  }
}

补充说明

  • 该实现和原函数逻辑完全一致:如果传入字符串同时包含多个匹配子串,会按映射对象中键的定义顺序返回第一个命中的对应值,调整匹配优先级只要修改键的排列顺序即可
  • 无匹配场景下会和原函数一样隐式返回undefined,无需额外写return语句

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.09 00:36:03