我有点问题我使用日期键创建一个对象,然后使用日期和值创建另一个对象。我想获取第二个对象的值,然后将其推入第一个对象。谢谢您的回答。

我的对象(obj)

2017-05-31 : null
2017-06-01 : null
2017-06-02 : null
2017-06-03 : null
2017-06-04 : null
2017-06-05 : null
2017-06-06 : null


具有值(getListDayInbound)的我的对象

2017-05-31 : // Data
2017-06-03 : // Data
2017-06-06 : // Data


我的输出

2017-05-31 : // Data
2017-06-01 : null
2017-06-02 : null
2017-06-03 : // Data
2017-06-04 : null
2017-06-05 : null
2017-06-06 : // Data


我的密码

var dateInbound  = '2017-06-03',
    getListDayInbound = response[dateOutbound].solutions[selectedOutbound].inbounds; // Object with values
const obj = {}; // New Object

function addDays(date, days) {
  var result = new Date(date);
  result.setDate(result.getDate() + days);
  result = moment(result).format('YYYY-MM-DD');
  return result;
}

function removeDays(date, days) {
  var result = new Date(date);
  result.setDate(result.getDate() - days);
  result = moment(result).format('YYYY-MM-DD');
  return result;
}

// Add -/+ 3 days into Key Object
for (var i = 1; i <= 3; i++) {
  obj[removeDays(dateInbound, i)] = null;
  obj[addDays(dateInbound, i)] = null;
}

obj[dateInbound] = null;

最佳答案

您可以使用Object.assign()



a = {
  '2017-05-31' : null,
  '2017-06-01' : null,
  '2017-06-02' : null,
  '2017-06-03' : null,
  '2017-06-04' : null,
  '2017-06-05' : null,
  '2017-06-06' : null
};

b = {
  '2017-05-31' : 'someData',
  '2017-06-03' : 'someData',
  '2017-06-06' : 'someData'
};

console.log(Object.assign(a, b))

10-07 18:14