如何为自定义解析对象扩展/实现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]"
可以修复吗?
答案 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