Parse.Object.extend的JSON.stringify返回" [object Object]"

时间:2015-08-18 11:36:38

标签: javascript json parse-platform tostring

如何为自定义解析对象扩展/实现toString?

比方说,我有一个包含" name"的Parse对象。和"距离"领域。

var NearBy = Parse.Object.extend("NearBy");
new Parse.Query(NearBy).first().then(function(nearby) {
    nearby.get("name") // = maxim
    nearby.get("distance") // = 3
})

我希望JSON.stringify(nearby)输出{ "name" : "maxim", "distance" : 3" },而不是转储"[object Object]"

可以修复吗?

2 个答案:

答案 0 :(得分:1)

您需要使用JSON.stringify(nearby)

原因很简单,现在你有一个json对象,它没有被转换成任何字符串,它只是一个对象。因此,当你跑步时,你应该看到:

[object object]

由于你现在有两个类型为JSON的对象,你需要对它们进行字符串化,以便将它们视为字符串而不是文字对象。

您的代码应如下所示:

var NearBy = Parse.Object.extend("NearBy");
new Parse.Query(NearBy).first().then(function(nearby) {
    nearby.get("name") // = maxim
    nearby.get("distance") // = 3
    JSON.stringify(nearby);
})

这样你就可以使用你的json,并将它从object转换为字符串,这样你就可以将它的属性作为字符串来处理。

答案 1 :(得分:0)

试试console.log(typeof nearby),看看它是什么?我怀疑nearby已经是一个字符串 因此console.log(nearby)应该有用。

JSON.stringify returns "[object Object]" instead of the contents of the object