javascript - 切片对象的原型(prototype)

标签 javascript angularjs underscore.js

假设我有一个对象 -

{ id: 1,
  name: "Alice",
  color: "red"
}

现在我想根据该对象的属性之一对其进行切片 -

例如,如果我选择属性 id - 对象将变为 - {id: 1}

在javascript或Angular或下划线框架中是否有任何原型(prototype)方法(请不要在你的答案中实现它,我知道如何实现它,我只是在寻找原型(prototype)方法)?

最佳答案

你可以这样写:

Object.prototype.slice_param = function(obj, param){
  for(p in obj){
    if(obj.hasOwnProperty(p) && p !== param){
       delete obj[p];
    }
  }
}

并像这样使用它:

Object.prototype.slice_param(yourObject, theParamYouWantToKeep);

或者使用Underscore's pick methodLodash's pick method

关于javascript - 切片对象的原型(prototype),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28690555/

相关文章:

angularjs - 'Route' 在 Restangular 函数 oneUrl() 和 allUrl() 中有什么用

javascript - 哪些脚本加载器(AMD 或非 AMD)与 Backbone.js/Underscore 一起使用?

javascript - 主干.集合.创建

javascript - 下划线 : map through object (even if undefined)

javascript - 为什么这段 JavaScript 代码(RequireJS 和 Node.js 的模块模式)有效?

javascript - ElementClickInterceptedException : Message: element click intercepted Element is not clickable error clicking a radio button using Selenium and Python

php - 客户端处理与服务器端处理,哪个快?

javascript - 当可见内容大于项目数时 jCarouselLite 错误

javascript - 我想将不存在的项目推送到已声明的对象中(如果它们尚不存在),则使用 Angular 中的 lodash

ruby-on-rails - 无法让设计从 Angular.js 注销