用Lodash省略嵌套属性 [英] omit nested properties with Lodash

查看:51
本文介绍了用Lodash省略嵌套属性的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我试图摆脱以下对象中的属性 5MinuteRate 15MinuteRate .

I'm trying to get rid of the properties 5MinuteRate and 15MinuteRatein the following object.

var object = { requestsPerSecond:
   { mean: 1710.2180279856818,
     count: 10511,
     'currentRate': 1941.4893498239829,
     '1MinuteRate': 168.08263156623656,
     '5MinuteRate': 34.74630977619571,
     '15MinuteRate': 11.646507524106095 } };

Lodash的omit()函数似乎不适用于嵌套对象.以下代码不起作用:

Lodash's omit()-function doesn't seem to work on nested objects. The following code doesn't work:

console.log(_.omit(object, 'requestsPerSecond.count'));

我尝试了此操作,但效果不佳:

I tried this but it doesn't work quite right:

var subObject = _.omit(object.requestsPerSecond, '5MinuteRate', '15MinuteRate');

console.log(_.merge(object, subObject));

推荐答案

您快到了.只需将 subObject 的结果分配给 object.requestsPerSecond .

You were almost there. Just assign what would be the result of your subObject to object.requestsPerSecond.

var object = {
  requestsPerSecond: {
    mean: 1710.2180279856818,
    count: 10511,
    'currentRate': 1941.4893498239829,
    '1MinuteRate': 168.08263156623656,
    '5MinuteRate': 34.74630977619571,
    '15MinuteRate': 11.646507524106095
  }
};

object.requestsPerSecond = _.omit(object.requestsPerSecond, '5MinuteRate', '15MinuteRate');

console.log(object);

<script src="https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.17.5/lodash.min.js"></script>

这篇关于用Lodash省略嵌套属性的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆