Передаю эту переменную strJSON
на страницу клиента. Эта переменная содержит такие данные:Проблемы с разбором JSON в Javascript
[{"firstName":"Michael","lastName":null,"emails":["[email protected]"]},
{"firstName":null,"lastName":null,"emails":["[email protected]"]},
{"firstName":"Olga","lastName":null,"emails":["[email protected]"]}]
Я пытаюсь разобрать JSON в объект JavaScript:
var parsedJSON = JSON.parse(strJSON);
Но в строке выше я получаю эту ошибку:
SyntaxError: JSON.parse: expected property name or '}' at line 1 column 3 of the JSON data
Я думаю, что Я получаю ошибку, потому что JSON должен быть в одинарных кавычках, поэтому, прежде чем разбирать JSON, я делаю это:
strJSON= "'" + str + "'";
Но после того, как я добавил строку выше, я в этом ряду:
var parsedJSON = JSON.parse(strJSON);
Я получаю эту ошибку:
SyntaxError: JSON.parse: unexpected character at line 1 column 1 of the JSON data
Любая идея, что я делаю не так? Спасибо заранее.
"JSON должны быть в одинарных кавычках" - это нонсенс. Вы можете использовать одинарные кавычки для создания строкового литерала JavaScript * без необходимости избегать всех '' ', но данные не должны включать их в конце. – Quentin
[Ваш код не показывает эту ошибку] (http: // jsbin .com/vajogiqifu/1/edit) .Какой бы ни была ваша проблема, она должна лежать где-то в другом месте. – Quentin
: что делает strJSON равным? можете ли вы добавить его в сообщение? (указанная строка уже похожа на JSON) – Protostome