首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如果字符串包含键,则返回值。

如果字符串包含键,则返回值。
EN

Stack Overflow用户
提问于 2022-04-05 20:14:16
回答 1查看 356关注 0票数 0

我有一个JS对象文字(logGroupMap),其中包含告警名作为键,它们的日志组作为值。告警名称是以不同长度的一致名称传入的,但每次都带有生成的字符,因此我试图查看字符串是否包含来自logGroupMap对象文字的键,如果是,我希望获得与该键相关联的值。

代码语言:javascript
复制
  let logGroup = (alarmName) => {
    Object.keys(logGroupMap).forEach((key) => {
      if (alarmName.includes(key)) { logGroup = logGroupMap.key; }
    });
  };

console.log(logGroup(messageDetails.AlarmName));

目前,这在所有情况下都是未定义的返回。

EN

回答 1

Stack Overflow用户

发布于 2022-04-05 20:50:31

使用Array.find()方法搜索匹配的密钥。

若要动态访问属性,请使用logGroupMap[key]logGroupMap.key返回名为key的属性的值,它不使用key作为变量。

代码语言:javascript
复制
function logGroup(alarmName) {
  let found = Object.keys(logGroupMap).find((key, value) => alarmName.includes(key));
  if (found) {
    return logGroupMap[key];
  }
}

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71757872

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档