javascript如何从对象中省略一个参数

时间:2018-03-23 19:14:39

标签: javascript

我有一个如下对象:

   test: {a:"value1",b:"value2",...},

我想省略某些参数并将剩下的数据保留在新数组中

eg: get {a:"value1",... } i want to omit b:"value1"

如何在一行或更多的javascript中执行此操作。

4 个答案:

答案 0 :(得分:4)

您可以使用rest properties



const test = { a: "value1", b: "value2", c: "value3"};
const { b, ...obj } = test;

console.log(obj);




One Note - 这需要最现代版的Javascript ...)

答案 1 :(得分:1)

以下代码创建了一个新对象,该对象由test的{​​{1}}属性组成。

a

答案 2 :(得分:1)

您可以.reduce使用Object.keys创建一个删除了指定键的新对象:



const obj = {
  a: "foo",
  b: "bar",
  c: 9001,
  d: true,
}

function omit(obj, keys) {
  return Object.keys(obj).reduce((newobj, key) => {
    if (!keys.includes(key)) newobj[key] = obj[key];
    return newobj;
  }, {});
}

console.log(omit(obj, ["b", "d"]))




答案 3 :(得分:1)

const _ = require ('lodash');
var object = { 'a': 1, 'b': '2', 'c': 3 };

var result = _.pick(object, ['a', 'c']);

或(感谢@Crice):

var result = _.omit (object, ['b']);