Điều đó hoàn toàn có thể xảy ra, nếu đối tượng phân bổ là niêm phong hoặc bị đóng băng bởi MongoDB.
Thay vào đó, hãy tạo một bản sao và thêm thuộc tính của bạn vào bản sao, có lẽ với sự lây lan thuộc tính của ES2018:
allocation = {...allocation, timestamp: moment(allocation.end_date).format('x')};
... hoặc nếu bạn không thể sử dụng thuộc tính trải rộng, hãy Object.assign :
allocation = Object.assign({}, allocation, {timestamp: moment(allocation.end_date).format('x')});
Bạn sẽ cần thay đổi const thành let trong cả hai trường hợp đó, vì chúng tôi đang thay đổi giá trị do biến allocation nắm giữ . Hoặc tất nhiên, hãy để nó dưới dạng const và ghi nhớ phiên bản đã sửa đổi riêng biệt:
const updatedAllocation = {...allocation, timestamp: moment(allocation.end_date).format('x')};
response.status(200).send(updatedAllocation);
Chính xác. const áp dụng cho biến (allocation ), không phải đối tượng mà biến đề cập đến.