仅保留 JavaScript 对象中的某些属性

2024-04-08

我有一个对象。我想通过删除除某些特定属性之外的所有属性来修改对象(而不是克隆它)。例如,如果我从这个对象开始:

var myObj={
    p1:123,
    p2:321,
    p3:{p3_1:1231,p3_2:342},
    p4:'23423',
    //....
    p99:{p99_1:'sadf',p99_2:234},
    p100:3434
}

并且只想要属性 p1、p2 和 p100,我怎样才能获得这个对象:

var myObj={
    p1:123,
    p2:321,
    p100:3434
}

我知道如何用暴力来做到这一点,但想要一个更优雅的解决方案。


这是谷歌搜索“js 仅保留某些键”时的第一个命中,因此可能值得更新。

最“优雅”的解决方案可能就是使用 underscore.js

_.pick(myObj, 'p1', 'p2', 'p100')
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

仅保留 JavaScript 对象中的某些属性 的相关文章

随机推荐

  • 如何在 React Native 中将文本设置为粗体、斜体或下划线?

    令人惊讶的是 Stack Overflow 上还没有一个问题将这些问题归为一类 事实上 斜体或下划线还没有答案这个问题 https stackoverflow com questions 35718143 react native add
  • 屏幕关闭时 Android 加速计不工作

    我正在为计算机科学的期末论文开发一个应用程序 我需要收集和记录加速度计数据 我需要使用一整天 因此电池存在严重限制 例如 我无法让屏幕保持打开状态 此外 这不是一个针对市场的应用程序 因此如果需要的话 进行一些严重的黑客攻击 甚至是低级 C
  • C中的括号可以改变按位运算的操作数的结果类型吗?

    我通过静态分析工具输入了以下代码 u1 u1 u2 OK u1 u1 u2 u3 NOT OK u1 u1 u2 10 NOT OK u1 u1 u2 10U NOT OK u1 unsigned char u1 u2 10U OK u1
  • 将多个标记放入图层组中

    我正在尝试使用 for 循环创建多个标记 将坐标存储到数组中 然后 我想将这些标记放入图层组中 并能够使用 L control layers 显示 隐藏它们 问题是只会显示最后创建的标记 我知道这是与闭包和作用域相关的东西 但我是 Java
  • AndEngine - 根据父按钮是否被按下启用禁用的子按钮

    根据我目前的设置 感谢答案here https stackoverflow com questions 15116158 andengine drawing a line between level objects entites usin
  • 获取Sharepoint 2010中当前登录的用户

    我有一个向我显示调查的 Web 部件 我需要获取当前用户 以便我可以根据当前用户的权限隐藏或显示调查的某些信息 SPContext Current Web CurrentUser应该可以解决问题 它具有类似的功能IsSiteAdmin an
  • Python 请求中的 SSLError(读取操作超时)

    我有一个 python API 脚本 尽管使用了 但我的脚本有时会在这一行终止try except 这是代码 try r requests post URL data params headers headers timeout self
  • 当容器大小调整时如何重绘此处地图?

    今天我遇到了一个以前没有遇到或注意到的特殊问题 在 Here Maps 3 0 中设置地图时 我注意到 如果浏览器窗口 小 小于全屏 则在加载地图期间 即使将浏览器窗口大小调整为全屏的 如何更新此处地图的地图大小以占据分配的空间 我的安排如
  • 如何将存储库注入到工作单元?

    我已经实现了我的 UnitOfWork 以便它保留对所有存储库的引用 public interface IUnitOfWork void Commit void RollBack public interface IMyUnitOfWork
  • 如何停止 GHCi 中的无限评估?

    当我运行类似的东西时 Prelude gt cycle ab I can see an infinite printing of ab To stop it I just use Ctrl c And it works 当我跑步时 Prel
  • AWS:为 Cognito 触发器指定 Lambda 版本

    我有一个 Cognito 用户池和相应的身份池 我想调用 Lambda 函数的特定版本Post authentication或类似的其他触发器 尽管示例都有版本号 但我在控制台中没有看到指定版本代码的选项 http docs aws ama
  • 什么是代数数据类型 (ADT)?

    我听到人们在函数式编程中谈论了很多代数数据类型 不要与 抽象数据类型 混淆 我所知道的是 ADT 指的是某种复合 通常是递归 数据类型 例如树或数学表达式 In 维基百科 https en wikipedia org wiki Algebr
  • 关于外连接的默认/填充值

    以下是我正在使用的更大 复杂数据帧的微小 玩具版本 gt gt gt A key u v w x 0 a 0 757954 0 258917 0 404934 0 303313 1 b 0 583382 0 504687 NaN 0 618
  • 如何将非连续数字添加到范围中?

    我试图迭代范围 750 765 并添加非连续数字 769 770 774 如果我尝试在范围函数之后添加数字 它会返回范围列表 然后是各个数字 gt gt gt for x in range 750 765 769 770 774 print
  • 样式表被汉字接管/替换

    好吧 有些事情变得疯狂了 除非中国从我的 iepage 上的测试 style css 文件开始接管 好吧 我猜他们一开始就讨厌 IE 但无论如何 它加载时没有样式表 悲伤 我进入 Web 检查器 看到所有链接的文件都充满了 可能 中文字符
  • 无法初始化私有常量成员[重复]

    这个问题在这里已经有答案了 我想要一个int与我的类相关联 该类在该类的用户实例化它时设置 class MyClass public MyClass int x private const int x 为了不断初始化它 我尝试使用构造函数
  • 无法运行 XAMPP - MySql

    当我尝试启动 XAMPP MySql 时 它不起作用 我已经尝试修复它 但我找不到任何实际的解决方案 我希望你能找到问题所在 有日志 2019 06 26 9 08 35 0 Note InnoDB Mutexes and rw locks
  • 为了速度/性能什么时候应该、不应该脱离 OOP?

    在 Android 开发者文章中 Google 指出 您通常应该声明公共变量 而不是带有 getter 和 setter 的私有变量 以增强嵌入式设备的性能 我认为函数调用比仅仅写入地址更昂贵 我想知道 应该在多大程度上牺牲性能来坚持 OO
  • 如何在列表框中设置对齐格式

    我将值添加到列表框 for int i 0 i lt 2 i lbBeamValue Items Add Beam i ToString value1 i Angle i ToString value2 i 显示如下 Beam 0 0 12
  • 仅保留 JavaScript 对象中的某些属性

    我有一个对象 我想通过删除除某些特定属性之外的所有属性来修改对象 而不是克隆它 例如 如果我从这个对象开始 var myObj p1 123 p2 321 p3 p3 1 1231 p3 2 342 p4 23423 p99 p99 1 s