2015-08-18 132 views
0

如何爲自定義分析對象擴展/實現toString?Parse.Object.extend的JSON.stringify返回「[object Object]」

說例如我有一個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

試試'console.log(typeof nearby)'?我懷疑「附近」已經是一個字符串。試試'console.log(附近)'。 –

+0

'我想JSON.stringify(附近)輸出'你的代碼在哪裏你會喜歡這種情況? –

+0

http://stackoverflow.com/questions/16493498/json-stringify-returns-object-object-instead-of-the-contents-of-the-object 某些東西可能會在'附近'上調用'toString' –

回答

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和從對象將其轉換爲一個字符串,這樣你就可以工作與它的屬性字符串。

+0

這不是這種情況,試圖轉換爲字符串,失敗正是我的問題的本質。請考慮重新閱讀並提出編輯建議以提高清晰度。 –

相關問題