javascript - 如何通过检查键来过滤对象

标签 javascript node.js lodash

我有数组对象,如果键不匹配,我想删除一些内部对象。

输入:

"configuration" : {
    "11111-2222-3333-444--5555" : {
        "home1" : 
             {
               "tel" : "125", 
               "address" : true, 
             }
    }, 
    "2222-3333-44444-5555--66666" : {
        "home2" : 
             {
               "tel" : "125", 
               "address" : true, 
             }
    }
}

我有一个匹配字符串11111-2222-3333-444--5555

预期结果:

"configuration" : {
    "11111-2222-3333-444--5555" : {
        "home1" : 
             {
               "tel" : "125", 
               "address" : true
             }
         }

   }

最佳答案

使用_.pick()获取你想要的 key :

var data = {"configuration":{"11111-2222-3333-444--5555":{"home1":{"tel":"125","address":true}},"2222-3333-44444-5555--66666":{"home2":{"tel":"125","address":true}}}};

var searchKey = '11111-2222-3333-444--5555';

var result = {
  configuration: _.pick(data.configuration, searchKey)
};

console.log(result);
<script src="https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.17.4/lodash.min.js"></script>

关于javascript - 如何通过检查键来过滤对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44834456/

相关文章:

javascript - 日期的正则表达式和时间的另一个正则表达式

javascript - 根据 DIV 大小调整 iFrame 的大小

javascript - 如何使用rest api的动态查询

javascript - lodash uniq - 选择要保留在对象数组中的重复对象

javascript - 按值对映射/哈希进行排序,保留键

javascript - 删除 Json 键中的空格

javascript - 如何使用 jQuery 删除焦点上的输入占位符文本?

javascript - 从左到右移动 Canvas 并不流畅和快速

javascript - 通过一次通话向所有订阅者发送网络推送通知

mysql - 异步 Node JS 查询连接