angular - typescript cách sao chép đối tượng mà không có tham chiếu
Tôi có một vật
item = { selectedItems: [] };
Tôi đã làm:
item1 = { ...item };
item2 = Object.assign({}, item);
item3 = Object.create(item);
nhưng khi tôi thay đổi selectedItems cho item1, chúng lại thay đổi cho tất cả các mục. Đây là dự án Angular. Sai ở đâu? Hay cách đúng là gì? Hoặc có phải là bộ nhớ đệm của trình duyệt không? Tôi không thể hiểu.
Câu trả lời #1
Bạn cần một bản sao sâu, ví dụ:
let newItem = JSON.parse(JSON.stringify(item));
