【发布时间】:2010-06-24 17:08:44
【问题描述】:
是否有一个函数或库可以将一个具有属性和函数的 JS 对象字符串化为 JSON,但是当涉及到一个函数时,它会将其更改为一个属性并调用该函数以返回其值?
function object() {
this.property = 12;
this.function = function() { return "This"; }
}
所以这会变成:
{property: 12, function: "This"}
有什么想法吗?只是好奇是否已经有一个。如果没有,我会尝试一个。扩展 JSON.stringify() 应该不难。
【问题讨论】:
-
顺便说一句,这只是一个例子。我意识到 this.function 不会正确评估。 =)
-
这样做没有任何意义,因为您假设所有函数都没有参数。
-
如果你没有很多这些对象,并且它们有特殊的解释,比如你描述的字符串化版本,你最好在对象上编写自己的 toJson() 方法。
-
我其实没想到... hrmm .. 那么为什么不把那些没有参数的字符串化呢?基本目标是将 JS 对象转换为另一种语言,并允许它拥有所有需要的信息,而无需在 JS 方面做太多工作。因此,如果您正确地构建了您的对象,并意识到会发生这种字符串化。然后准备好了,因此我只需要没有参数的;)
标签: javascript json serialization