簡體   English   中英

使用JSON.stringify()時如何忽略.toJSON函數?

[英]How to ignore .toJSON function when using JSON.stringify()?

我發現如果為對象定義.toJSON()函數,那么它用於對對象進行字符串化,而不是默認。 有沒有辦法忽略這個重寫的函數並運行默認的stringify進程?

重新定義指定對象中的toJSON方法。 例如:

  function kryptonite(key) { var replacement = {}; for(var __ in this) { if(__ in alias) replacement[__] = this[__] } return replacement; } var foo, bar; var alias = {"Clark":"","phone":""}; var contact = { "Clark":"Kent", "Kal El":"Superman", "phone":"555-7777" } contact.toJSON = kryptonite; foo = JSON.stringify(contact); contact.toJSON = undefined; bar = JSON.stringify(contact); console.log("foo: ", foo); console.log("bar: ", bar); 

參考

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM