JS 调试中常见的报错问题解决方法


Posted in Javascript onMay 20, 2017

报错:Uncaught SyntaxError: Unexpected token o in JSON at position 1

at JSON.parse (<anonymous>)
at Function.m.parseJSON (jquery.js:8515)
at Object.success (crud.html:45)
at j (jquery.js:3143)
at Object.fireWith [as resolveWith] (jquery.js:3255)
at x (jquery.js:9309)
at XMLHttpRequest.b (jquery.js:9713)

(翻译:不能捕获的语法错误:json数据位置0处发现不能识别的标记<)

原因:json格式错误

返回数据 语句用echo json_encode($data,true);但是用了echo json_decode($data);
由于函数使用不对,返回的data不是json数据,第一个字符是“ <”,所以报错Unexpected token < in JSON at position 0(翻译:json数据位置0处发现不能识别的标记<);

如果使用 $.ajax({})而不是 $.get() 区别: 当使用 $.ajax 时,php返回的 JSON字符串已经被 ajax 中的属性 dataType 将请求的参数类型要求为String类型(dataType:'json')返回为 JSON对象,不需要再次转换;当使用 $.get 时,服务器返回的数据格式为原始的字符串数组,因此,需要将返回的字符串转换为数组,使用 JSON.parse(jsonString) ,将JSON字符串解析为JSON对象;

json教程见:http://www.w3school.com.cn/json/index.asp

解决办法:

修改为echo json_encode($data,true);

将php的代码调试代码 echo()去掉,就不会再报这样的错误了:

$json = json_encode(array(
      "resultCode"=>200,
      "message"=>"查询成功!",
      "data"=>$data
    ),JSON_UNESCAPED_UNICODE);
    
    //注释掉
    /*echo($json);*/

如果使用 $.ajax 时,不需要注释

//不需要注释
echo($json);

如果不是该问题,请检查php文件给返回的data数据,是否标准json格式。如果php文件中有var_dump、echo、注释等,都会对返回的json数据有影响。

以上这篇JS 调试中常见的报错问题解决方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
10个基于Jquery的幻灯片插件教程
Oct 29 Javascript
javascript抖动元素的小例子
Oct 28 Javascript
JavaScript验证图片类型(扩展名)的函数分享
May 05 Javascript
JS 在指定数组中随机取出N个不重复的数据
Jun 10 Javascript
javascript实现一个简单的弹出窗
Feb 22 Javascript
jQuery animate easing使用方法图文详解
Jun 17 Javascript
EditPlus中的正则表达式 实战(2)
Dec 15 Javascript
Angular directive递归实现目录树结构代码实例
May 05 Javascript
php 修改密码实现代码
May 24 Javascript
jQuery基于cookie实现换肤功能实例
Oct 14 jQuery
vue-froala-wysiwyg 富文本编辑器功能
Sep 19 Javascript
解决layui数据表格排序图标被超出的表头挤出去的问题
Sep 19 Javascript
详解使用angular-cli发布i18n多国语言Angular应用
May 20 #Javascript
ztree实现权限横向显示功能
May 20 #Javascript
神级程序员JavaScript300行代码搞定汉字转拼音
May 20 #Javascript
在使用JSON格式处理数据时应该注意的问题小结
May 20 #Javascript
微信小程序利用co处理异步流程的方法教程
May 20 #Javascript
关于jQuery库冲突的完美解决办法
May 20 #jQuery
layui文件上传实现代码
May 20 #Javascript
You might like
比较好用的PHP防注入漏洞过滤函数代码
2012/04/11 PHP
php中CI操作多个数据库的代码
2012/07/05 PHP
php中导出数据到excel时数字变为科学计数的解决方法
2013/02/03 PHP
destoon实现首页显示供应、企业、资讯条数的方法
2014/07/15 PHP
初识PHP中的Swoole
2016/04/05 PHP
PHP实现求解最长公共子串问题的方法
2017/11/17 PHP
PHP中使用CURL发送get/post请求上传图片批处理功能
2018/10/15 PHP
JavaScript Array Flatten 与递归使用介绍
2011/10/30 Javascript
Ajax请求在数据量大的时候出现超时的解决方法
2014/02/27 Javascript
JS获取客户端IP地址、MAC和主机名的7个方法汇总
2014/07/21 Javascript
微信小程序 数据访问实例详解
2016/10/08 Javascript
微信小程序 swiper组件详解及实例代码
2016/10/25 Javascript
Nodejs下DNS缓存问题浅析
2016/11/16 NodeJs
bootstrap table配置参数例子
2017/01/05 Javascript
fullCalendar中文API官方文档
2017/02/07 Javascript
利用Javascript开发一个二维周视图日历
2017/12/14 Javascript
详解Require.js与Sea.js的区别
2018/08/05 Javascript
vue组件传值的实现方式小结【三种方式】
2020/02/05 Javascript
解决ant Design中this.props.form.validateFields未执行的问题
2020/10/27 Javascript
python之PyMongo使用总结
2017/05/26 Python
Python配置mysql的教程(推荐)
2017/10/13 Python
python先序遍历二叉树问题
2017/11/10 Python
对Python正则匹配IP、Url、Mail的方法详解
2018/12/25 Python
Python利用神经网络解决非线性回归问题实例详解
2019/07/19 Python
Python (Win)readline和tab补全的安装方法
2019/08/27 Python
python单例模式原理与创建方法实例分析
2019/10/26 Python
python迭代器常见用法实例分析
2019/11/22 Python
flask框架配置mysql数据库操作详解
2019/11/29 Python
Python参数传递实现过程及原理详解
2020/05/14 Python
惊艳的手工时装首饰:Migonne Gavigan
2018/02/23 全球购物
幼儿园毕业教师感言
2014/02/21 职场文书
夫妻忠诚协议范文
2014/11/16 职场文书
先进典型事迹材料
2014/12/29 职场文书
使用@Value值注入及配置文件组件扫描
2021/07/09 Java/Android
详解Nginx 被动检查服务器的存活状态
2021/10/16 Servers
通过feDisplacementMap和feImage实现水波特效
2022/04/24 HTML / CSS