JSON.stringify()在具有类的对象上不起作用

时间:2019-03-24 13:53:50

标签: javascript json class

我有这个对象:

{
   exports: class y {}
}

现在我正在对其进行JSON.stringify

JSON.stringify({
    exports: class y {}
})

但是它返回一个空对象...我做错了什么?谢谢

1 个答案:

答案 0 :(得分:3)

class实际上是一个没有[[call]]内部属性的函数。此类型在JSON中没有表示形式,因此您会看到结果。您可以尝试JSON.stringify个包含function的对象来看到相同的结果。

根据经验,永远不要尝试将代码作为数据存储在JS中。存储代码非常困难,并且需要您存储大量有关代码以及环境state的信息。以babel及其api为例,将代码作为数据进行处理。