javascript - 如何搜索对象的键并获取匹配键的值
问题描述
如何从对象中创建搜索引擎?
示例:我该如何使用
{一个E:“二”,三:“四”,wOn:“太”},
用“ON”这个短语做点什么,然后以某种方式返回[“two”,“too”]?
编辑:如果我可以稍微改变这个问题,我怎样才能让最相似的键值首先出现?我也在键中使用空格。
新示例:在:
{ "一一零":"0" "零":"1" "一二":"2" "一一":"3" }
出去:
["3","0","2"]
解决方案
这可能会有所帮助。
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
。
推荐阅读
- ruby-on-rails - 为什么我的属性在 Rails 中将字符串转换为数字
- python - 处理 NotSupported 异常
- android - 如何在我的应用启动时显示空白屏幕而不是平板电脑上的启动画面?
- python - 在python中对一列上的值进行分组和总和
- django - 托管在 aws ec2 上的 django Gunicorn 服务器出错
- r - 如何在 R 中计算过去几个小时的相同分类?
- sql - 两个十进制值的差返回负数,我需要一个零下限
- html - 嵌套网格问题(最大宽度防止子元素填充 div)
- ruby-on-rails - 在 Rails 中创建 Time 对象时的错误时间
- android - Retrofit 2.5.0 第三次后不执行请求