2014-10-30 3 views
1

Я использую dustjs и хочу объединить несколько шаблонов.Parse json string с двойными кавычками в jquery

Когда я делаю {name|js} с сайта учебника (here), я получаю что-то вроде "title": "Testtitle". Мне нужно что-то вроде title: "Testtitle". Я также пробовал {name|jp}, где строка разбирается с Json Object, но это не сработало.

Могу ли я что-то сделать в jQuery для управления этим? Я уже пробовал jsonParse с ошибкой Uncaught SyntaxError: Unexpected token & и eval (такая же ошибка).

Edit:

{"id":1,"title":"Test" - это выход в журнале из {name|js}

+2

'заглавием: "Testtitle"' не является допустимым JSON. В JSON все имена свойств должны быть в кавычках. Кавычки не требуются в литералах Javascript, если имя свойства является допустимым идентификатором, но JSON нуждается в них. – Barmar

+0

Когда я пытаюсь 'var your_json = {firstName: 'James', lastName: 'Smith'};' он работает для меня. Но как я могу разобрать '' {"firstName": «Джеймс», «lastName»: «Смит») «к этому примеру? – tommeeyy

ответ

1

В литералов объектов Javascript, указав имя свойства не является обязательным, если это является допустимым идентификатором. Таким образом, вы можете написать либо:

var your_json = { firstName: 'James', lastName: 'Smith' }; 

или

var your_json = { "firstName": "James", lastName: "Smith" }; 

В JSON, двойные кавычки обязательны. Эквивалент строка JSON будет:

var your_json_string = '{"firstName": "James", "lastName": "Smith"}'; 

или:

var your_json_string = "{\"firstName\": \"James\", \"lastName\": \"Smith\"}"; 

Вы можете разобрать это с:

var your_json = $.parseJSON(your_json_string); 
+0

Я уже пробовал, но я получил эту ошибку: 'SyntaxError: Неожиданный токен &' – tommeeyy

+0

В моем коде нет '&', я не понимаю, как вы это получите. Пожалуйста, обновите свой вопрос тем, что вы на самом деле делаете. – Barmar

+0

Я сделал. Он возвращает мне '& quot'. Это проблема или? – tommeeyy