2016-03-01 2 views
0

Я создал JsonRestStore так:Dojo Как разобрать весь JsonRestStore (JSON в строку)

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); 

И, как предполагалось, он не работал вообще.

Так что мой вопрос:

Есть ли способ, чтобы разобрать весь магазин? Это будет amazing!

Большое вам спасибо!

ответ

2

Ваш магазин возвращает результат как объект. Если вы хотите, чтобы превратить объект в строку необходимо использовать JSON.stringify:

Метод

JSON.stringify() преобразует значение JavaScript в строку JSON, необязательно, заменяя значения, если функция Заменитель задана, или, возможно, включая только указанные свойства, если указан массив replacer.

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

Спасибо вам большое за ваш быстрый ответ! Мне это очень помогает! –

Смежные вопросы