1. 程式人生 > >node-刪除對象中指定屬性失效問題-JSON.parse實例化

node-刪除對象中指定屬性失效問題-JSON.parse實例化

修改 ole log 字段 foreach ons 對象 java json

需求描述:

  刪除 _body 對象裏的 code 字段。用 detele 刪除後輸出的_body 裏仍有 code 字段。

body是從後臺得到的json串,所以要先 parse 轉換成對象,本以為 delete 之後body會更新,註意下面輸出的是 JSON.parse(body) ,輸出的內容並未刪除 code

let body = [{"id":45,"code":9,"}]
let _body = JSON.parse(body)
_body.forEach(e => {
    delete e.code; 
})
console.log(_body) // 已刪除 code
console.log(JSON.parse(body))

  

因為 delete e.code; 只是修改對象的引用,而 JSON.strinfly() Parse()是重新生成一個實例,所以 code 並未刪除。

正確的寫法是 輸出 _body

node-刪除對象中指定屬性失效問題-JSON.parse實例化