JSON.parse: ожидаемое имя свойства или '}'
Данные содержат (/ "
/):
{"test":"101","mr":"103","bishop":"102"}
script:
console.log($.parseJSON(result));
Я получаю ошибку,
JSON.parse: expected property name or '}'.
Ответы
Ответ 1
Имела ту же проблему при использовании одинарных кавычек в файле JSON, которая была заменена на двойные кавычки для всех свойств/значений строки, и теперь она работает нормально, надеюсь, что это кому-то поможет....
Изменить:
JSON.parse("{'wrongQuotes': 5}")
To:
JSON.parse('{"rightQuotes": 5}')
Ответ 2
Если вы получаете JSON с закодированным "
, перед тем, как сделать JSON.parse
, вам нужно будет заменить каждый экземпляр "
на true "
. Что-то вроде:
myJSONstring.replace(/"/ig,'"');
Ответ 3
+ Изменить
{"test":"101","mr":"103","bishop":"102"}
к
'{"test":"101","mr":"103","bishop":"102"}'
если это исходит от сервера (PHP)
т.е. <?php $php_var = ["test" => "101", "mr" => "103", "bishop" => "102"]?>
затем в конце JavaScript
var javascript_var = $.parseJSON('<?= json_encode($php_var)?>')
;