#json #encoding #syntax
Вопрос:
Добрый вечер,
Итог: 2 раза одна и та же строка. 1 можно разобрать, а 2-нет.
Я пытаюсь запустить этот код
<script>
string1 = '{"state":"1"}';
string2 = '{"state":"1"}';
parse = JSON.parse(string3);
</script>
и это дает мне следующее сообщение об ошибке:
Неперехваченная синтаксическая ошибка: JSON.синтаксический анализ: неожиданный символ в строке 1 столбца 1 данных JSON [отредактировано]jsontest2.html:4 jsontest2.html:4:14
таким образом, строка под названием String2 кажется недопустимой строкой Джейсона, и она не поддается анализу.
Но очевидно, что обе строки одинаковы…
Когда я удаляю первую кавычку из строки 2 и снова вводю ее вручную, все работает.
Но я генерирую Json с помощью скрипта, и он выдает мне недопустимую строку, которая выглядит как допустимая строка.
Так что, возможно, первая кавычка строки 2 каким-то образом плохо закодирована… но как, что, почему … Честно говоря, я немного запутался здесь.
Обновить:
Когда я автоматически определяю кодировку в ATOM, это дает мне следующее:
<script>
string2 = '{"state":"1"}';
string3 = '{"state":"1"}';
parse = JSON.parse(string3);
</script>
Так что это действительно проблема с кодированием…. поэтому PHP создает странную единственную метку qoutation.
Знаете ли вы, как этого избежать?