Bạn có thể làm điều này với Object.assign () . Đôi khi bạn cần một mảng, nhưng khi làm việc với các hàm mong đợi một đối tượng JSON - chẳng hạn như một cuộc gọi OData - tôi đã thấy phương thức này đơn giản hơn là chỉ tạo một mảng để giải nén nó.
var alerts = {
1: {app:'helloworld',message:'message'},
2: {app:'helloagain',message:'another message'}
}
alerts = Object.assign({3: {app:'helloagain_again',message:'yet another message'}}, alerts)
//Result:
console.log(alerts)
{
1: {app:'helloworld',message:'message'},
2: {app:'helloagain',message:'another message'}
3: {app: "helloagain_again",message: "yet another message"}
}
EDIT: Để giải quyết nhận xét liên quan đến việc nhận khóa tiếp theo, bạn có thể nhận được một mảng các phím có chức năng Object.keys () - xem câu trả lời của Vadi để biết ví dụ về việc tăng khóa. Tương tự, bạn có thể nhận được tất cả các giá trị với các cặp Object.values () và key-value với Object.entries () .
var alerts = {
1: {app:'helloworld',message:'message'},
2: {app:'helloagain',message:'another message'}
}
console.log(Object.keys(alerts))
// Output
Array [ "1", "2" ]