gpt4 book ai didi

javascript - 将 JSON 转换为 X 类型的 JavaScript 对象

转载 作者:太空宇宙 更新时间:2023-11-04 03:09:43 26 4
gpt4 key购买 nike

我了解 JSON.stringify 或 JSON.parse 的全部内容,即一个序列化对象,一个将字符串反序列化回对象。这太棒了!

但是,我有以下情况:

var i = new MyMagicalObject();
var oi = JSON.parse(JSON.stringify(i));
console.log(i.numFields()); // this is fine
console.log(oi.numFields()); // this throws since Object has no method 'numFields'

基本上,我想将 oi 视为“MyMagicalObject”的一个实例,因为它就是这样。

我确信在 oi 或其他东西上设置原型(prototype)有一些魔力,但我对 JavaScript 还很陌生。任何帮助将不胜感激。

最佳答案

您无法在 JSON 字符串中“存储”JavaScript 函数。

唯一可以存储在 JSON 中的数据类型是:

  • Number
  • String
  • Boolean
  • Array
  • Object
  • null

(source)

任何不属于这些类型的内容都会被忽略:

function Test(){
this.foo = function(){
return 'bar';
}
this.theAnswer = '42';
}
var t = new Test();
alert(t.foo());
alert(JSON.stringify(t))

关于javascript - 将 JSON 转换为 X 类型的 JavaScript 对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26095265/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com