2016-03-01 24 views
0

我成立了一個JsonRestStore這樣的:道場如何分析一個整體JsonRestStore(JSON爲String)

var store = new JsonRestStore({target:"http://localhost:****/blub/"}); 

我得到我的數據有:

store.get("rulesets"); 

和服務器回報控制檯:

{"xomName":"loaded","topicName":"Alpha","ioobjectName":"class1","rulesetName":"xmlbinding$45$rules" 
},{"xomName":"loaded","topicName":"Beta","ioobjectName":"class2","rulesetName":"xmlbinding$45$rules" 
},{"xomName":"loaded","topicName":"gammp","ioobjectName":"class3","rulesetName":"xmlbinding$45$rules" 
}] 

所以現在我想解析整個商店(規則集)。 我的建議是,像這樣做:

var memo = new Memory(); 
memo = JSON.parse(JSON.stringify(store.get("rulesets"))); 
console.log(memo); 

而且,作爲假設,它不工作的。

所以我的問題是:

有沒有一種方法來分析整個商店嗎? 這將是驚人

非常感謝!

回答

2

您的商店將結果作爲對象返回。如果你想給的對象變成一個字符串,你需要使用JSON.stringify

的JSON.stringify()方法一個JavaScript值轉換爲JSON字符串,可以選擇更換,如果替代品的功能被指定,或可選值如果指定了替換數組,則只包括指定的屬性。

https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/JSON/stringify

如果你想再次打開該字符串返回到一個對象,你需要使用JSON.parse:

的JSON.parse()來方法解析字符串作爲JSON,可選地轉換解析產生的值。

https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/JSON/parse

,你在這裏做什麼:

JSON.parse(JSON.stringify(store.get("rulesets"))); 

正在轉向的store.get("rulesets")結果對象轉換成字符串使用JSON.stringify,然後你在車削生成的字符串後面一個對象再次使用JSON.parse。因此,事實上整條生產線都沒有做任何事情。

正確的例子:

// Assign result object to "myObject" variable 
var myObject = store.get("rulesets"); 

// Convert "myObject" to string and assign to variable "myString" 
var myString = JSON.stringify(myObject); 

// Convert "myString" to object and assign to variable "myOtherObject" 
var myOtherObject = JSON.parse(myString); 
+0

非常感謝您對我付出的快回答! 它幫助我很多! –

相關問題