首页 > 解决方案 > 如何搜索对象的键并获取匹配键的值

问题描述

如何从对象中创建搜索引擎?

示例:我该如何使用

{一个E:“二”,三:“四”,wOn:“太”},

用“ON”这个短语做点什么,然后以某种方式返回[“two”,“too”]?

编辑:如果我可以稍微改变这个问题,我怎样才能让最相似的键值首先出现?我也在键中使用空格。

新示例:在:

{ "一一零":"0" "零":"1" "一二":"2" "一一":"3" }

出去:

["3","0","2"]

标签: javascriptjavascript-objects

解决方案


这可能会有所帮助。

var object = {
    onE: "two",
    three: "four",
    wOn: "too" 
};

var array = [];

Object.keys(object).filter((key) => key.match(/On/i)).forEach((key) => {
    array.push(object[key]);
});

console.log(array);
.as-console-wrapper {
  max-height: 100% !important;
}

基本上,从对象中获取键,并根据正则表达式过滤它们以匹配ON键。一旦我们有了过滤后的键,我们forEach循环它们以将它们的值推入 empty array


推荐阅读