2017-05-17 16 views
0

少し問題があります。私は、日付キーを持つオブジェクトを作成し、私は日付と値を持つ別のオブジェクトを持っています。 2番目のObjectの値を取得し、最初のObjectにプッシュする必要があります。あなたの答えをありがとう。Javascript insert同じキーを持つ別のオブジェクトへのオブジェクト値

マイオブジェクト(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; 
+1

を使用することができますか? – Utkanos

答えて

1

あなたはどのような問題が発生している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))

0

私は、Object.assignを直接使用すると、新しい値で置き換えられると思います。

詳細はdocをご確認ください。

チェックこのスニペット:

let obj1 = {a:1, b:2, c:3, d:4} 
 
let obj2 = {b:5, d:10} 
 

 
obj1 = Object.assign({}, obj1, obj2); 
 

 
console.log(obj1);

関連する問題