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 相关文章推荐
延时重复执行函数 lLoopRun.js
May 08 Javascript
javascript 变量作用域 代码分析
Jun 26 Javascript
解析jQuery与其它js(Prototype)库兼容共存
Jul 04 Javascript
javaScript实现滚动新闻的方法
Jul 30 Javascript
jQuery常用样式操作实例分析(获取、设置、追加、删除、判断等)
Sep 08 Javascript
详解用webpack的CommonsChunkPlugin提取公共代码的3种方式
Nov 09 Javascript
分享5个好用的javascript文件上传插件
Sep 16 Javascript
基于JavaScript实现一个简单的Vue
Sep 26 Javascript
vue刷新页面时去闪烁提升用户体验效果的实现方法
Dec 10 Javascript
微信小程序引入模块中wxml、wxss、js的方法示例
Aug 09 Javascript
vue实现图片懒加载的方法分析
Feb 05 Javascript
Javascript幻灯片播放功能实现过程解析
May 07 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
咖啡机如何保养和日常清洁?
2021/03/03 冲泡冲煮
php实现的发送带附件邮件类实例
2014/09/22 PHP
PHP 实现从数据库导出到.csv文件方法
2017/07/06 PHP
laravel5.6中的外键约束示例
2019/10/23 PHP
js传中文参数controller里获取参数乱码问题解决方法
2014/01/03 Javascript
document.write的几点使用心得
2014/05/14 Javascript
原生js实现复制对象、扩展对象 类似jquery中的extend()方法
2014/08/30 Javascript
HTML+CSS+JS实现完美兼容各大浏览器的TABLE固定列
2015/04/26 Javascript
js+html5获取用户地理位置信息并在Google地图上显示的方法
2015/06/05 Javascript
Java Mybatis框架入门基础教程
2015/09/21 Javascript
js仿支付宝填写支付密码效果实现多方框输入密码
2016/03/09 Javascript
自学实现angularjs依赖注入
2016/12/20 Javascript
浅谈JavaScript中promise的使用
2017/01/11 Javascript
vue实现百度搜索下拉提示功能实例
2017/06/14 Javascript
Bootstrap Table 搜索框和查询功能
2017/11/30 Javascript
动态Axios的配置步骤详解
2018/01/12 Javascript
vue+vuex+axios实现登录、注册页权限拦截
2018/03/09 Javascript
NodeJs项目中关闭ESLint的方法
2018/08/09 NodeJs
js实现导航跟随效果
2018/11/17 Javascript
教你使用vue-cli快速构建的小说阅读器
2019/05/13 Javascript
vue基于v-charts封装双向条形图的实现代码
2019/12/09 Javascript
openlayers实现地图弹窗
2020/09/25 Javascript
Python微信公众号开发平台
2018/01/25 Python
删除DataFrame中值全为NaN或者包含有NaN的列或行方法
2018/11/06 Python
python实现随机漫步方法和原理
2019/06/10 Python
python 应用之Pycharm 新建模板默认添加编码格式-作者-时间等信息【推荐】
2019/06/17 Python
在pytorch中对非叶节点的变量计算梯度实例
2020/01/10 Python
python实现扑克牌交互式界面发牌程序
2020/04/22 Python
处理HTML5新标签的浏览器兼容版问题
2017/03/13 HTML / CSS
欧洲第一的摇滚和金属乐队服装网站:EMP
2017/10/26 全球购物
2014年三八妇女节活动方案
2014/02/28 职场文书
媒矿安全生产承诺书
2014/05/23 职场文书
大学生奶茶店创业计划书
2019/06/25 职场文书
SQL注入的实现以及防范示例详解
2021/06/02 MySQL
解决sql server 数据库,sa用户被锁定的问题
2021/06/11 SQL Server
ECharts transform数据转换和dataZoom在项目中使用
2022/12/24 Javascript