将数据推送到另一个对象

时间:2017-06-09 05:46:07

标签: javascript angular typescript

如何将新值推送到现有对象?

基本上我得到了一些表单数据noteValue,我还有一些其他数据输入到我的组件person,我想在运行我的保存功能之前加入noteValue

let noteValue = form.value;
noteValue.said_by.person_name = this.person.name;

这是我在其他地方工作的一个例子,但它似乎不起作用:

let exValue = form.value;    
exValue['due_date'].timestamp = this.timestamp;

我错过了什么?这甚至是正确的方法吗?

2 个答案:

答案 0 :(得分:0)

您可以使用spread operator创建一个同时包含prevStatenewData的新对象,然后将prevState替换为newState }

const newState = {...prevState, newData} prevState = newState;

答案 1 :(得分:0)

您可以使用Object.assign()

Object.assign()如果目标对象中的属性具有相同的密钥,则它们将被源中的属性覆盖。

var obj1 = { foo: 'bar', x: 42 };
var obj2 = { foo: 'baz', y: 13 };
var obj = Object.assign({}, obj1, obj2);
console.log(obj);