我們delete在需要洗掉物件參考時使用。但是JS中有沒有辦法洗掉整個物件和所有參考?
例子:
let obj = {
a: 3
}
let arr = [obj];
let brr = [obj];
如果我更改obj陣列中的專案也會更改。另外,我可以delete arr[0]用來洗掉參考。但是我想洗掉obj并且我希望陣列中的專案也被洗掉。
就像是:
// Before:
let obj = {
a: 3
}
let arr = [obj];
let brr = [obj];
arr.length==1 // true
brr.length==1 // true
// Deleting:
delete(obj)
// After:
arr.length==0 // true
brr.length==0 // true
uj5u.com熱心網友回復:
不。
在 JavaScript 中洗掉物件的唯一方法是定位并洗掉對它的每個參考。
沒有從一個物件開始并自動洗掉對它的所有參考的通用機制。
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/391786.html
標籤:javascript
上一篇:反應不顯示任何東西
