Я получаю эту ошибку «uncaught syntaxerror неожиданный токен U» при запуске моей страницы в Chrome. И в Firefox я получаю «JSON.parse: неожиданный персонаж». Я возвращаю данные json из php-файла, и возвращаемая строка json действительна. Я проверил это с http://jsonlint.com/ . Любая помощь будет оценена ... Спасибо.
Вот возвращенная строка JSON
[
["1","Pan Africa Market","\"1521 1st Ave, Seattle, WA\"","47.608941","-122.340145","restaurant"],
["2","The Melting Pot","14 Mercer St, Seattle, WA","47.624562","-122.356442","restaurant"],
["3","Ipanema Grill","1225 1st Ave, Seattle, WA","47.606366","-122.337656","restaurant"],
["4","Sake House","230 1st Ave, Seattle, WA","47.612825","-122.34567","bar"],
["5","Crab Pot","1301 Alaskan Way, Seattle, WA","47.605961","-122.34036","restaurant"],
["6","Mexican Kitchen","2234 2nd Ave, Seattle,WA","47.613975","-122.345467","bar"],
["7","Wingdome","1416 E Olive Way, Seattle, WA","47.617215","-122.326584","bar"],
["8","Piroshky Piroshky","1908 Pike pl, Seattle, WA","47.610127","-122.342838","restaurant"]
]
\"
выводом.Ответы:
Эта ошибка обычно видна, когда заданное значение
JSON.parse
действительноundefined
. Итак, я бы проверил код, который пытается разобрать это - скорее всего, вы не анализируете фактическую строку, показанную здесь.источник
"undefined"
как строка вместо литералаundefined
. Я просто потратил 30 минут, чтобы выяснить это.u
, заключается в том, что онundefined
приводится к строке (потому что строка - это то, что ожидает JSON.parse).Unexpected token N in JSON at position...
и проблема была вdouble
значении:NaN
Я получал это сообщение во время проверки (в проекте MVC). Для меня добавление элемента ValidationMessageFor устранило проблему.
Чтобы быть точным, строка номер 43 в jquery.validate.unobtrusive.js вызвала проблему:
источник
$("form :input").valid();
для запуска проверки. Но, очевидно, он получил ошибку в скрытом поле без ValidationMessageFor. Исправлено путем изменения на$("form :input:visible").valid();
Параметр для JSON.parse может ничего не возвращать (т. Е. Значение, указанное для JSON.parse
undefined
)!Это случилось со мной, когда я анализировал скомпилированный код солидности из файла xyz.sol.
который был написан с ошибкой как
который ничего не возвращал!
источник
Наиболее распространенный случай возникновения этой ошибки - использование шаблона, который генерирует элемент управления, затем изменяет способ
id
и / илиname
генерируется путем переопределения шаблона по умолчанию чем-то вродеа затем забыть изменить
ValidationMessageFor
кНадеюсь, это сэкономит вам время.
источник
Я столкнулся с этой ошибкой, когда запустил условие поиска для JSONArray в цикле for. Проблема, с которой я столкнулся, была результатом того, что одно из значений в цикле for вернуло значение null. Следовательно, когда я пытался получить доступ к свойству, это не удалось.
Поэтому, если вы делаете что-то в JSONArrays, где вы не уверены в источнике данных и его целостности, я считаю хорошей привычкой иметь дело с нулевыми и неопределенными исключениями в этом случае.
Я исправил это, проверив значение null в возвращаемом значении find в JSONArray и обработав исключения соответствующим образом.
Мысль это может помочь.
источник
В моем случае он пытался вызвать JSON.parse () для переменной AJAX до возвращения XHRResponse. НАПРИМЕР:
Я заменил это на пример с сайта jQuery для $ .get :
источник
Просто если ты не понял
Например, это говорит о том, что у меня есть JSON STRING .. НЕ ИМЕЕТ ОБЪЕКТ JSON ИЛИ Массив.
так что если в JavaScript вы анализируете строку как
Отличные ответы выше
источник
Этот ответ, если для людей, которые сталкиваются с этой ошибкой при работе с File Upload ..
Мы использовали промежуточное программное обеспечение для шифрования на основе токенов - дешифрование, и мы столкнулись с той же ошибкой.
Ниже был наш код в файле маршрута:
здесь мы вызывали промежуточное программное обеспечение перед загрузкой, и это вызывало ошибку. Поэтому, когда мы изменили это на это, это сработало.
источник
Это не сложная задача. Эта проблема также возникает на моем сайте, вам нужно сдвинуть ваши файлы js в верхнем порядке. Потому что в том месте, где вы используете JSON Parsing, на этот раз ваши файлы JS не загружаются. ПРИМЕР #
изменить на
источник
Ну, для всех, кто на самом деле не может найти ошибку где-либо в вашем коде, ни «неопределенная, как говорится в локальном хранилище, ни null» ... просто закомментируйте ваш код и напишите другой, который фактически удаляет элемент в локальном хранилище. После этого вы можете прокомментировать или удалить текущий код и снова сбросить предыдущий, просто раскомментировав его (если вы не удалите его ... если вы это сделали, вы можете написать его снова :))
Консоль покажет ноль и что она ... сбросит ваш код снова, если t не работает, чувак! Вы получили ошибки.
Извините за мой английский!
источник
Я получал эту ошибку, когда я использовал ту же переменную для строки JSON и проанализировал JSON:
Я изменил функцию на:
Теперь эта ошибка ушла.
источник