JSON传递bool类型数据的处理方式介绍


Posted in Javascript onSeptember 18, 2013

ajax中使用json传递数据时,其它数据类型都不是问题,但是如果服务器端生成的JSON中有bool类型的数据时,到客户端解析时出现了小小的问题,总结如下:

服务器返回的JSON为:

{"TypeID":[1037],"Title":"河北软件职业技术学院","Intro":"","IsLink":"false","LinkUrl":"http://www.hbsi.edu.cn","IsPic":"true","Picture":"/newsimages/hbsi.jpg","Content":"<p><br></p>"}

其中属性:IsLink和IsPic都是bool类型,在客户端使用方法:
document.getElementById("checkbox1").checked = news.IsLink;

会选中复选框,但是IsLInk为false,本不应该选中,为什么呢?

查其原因,javascript 有三种基本数据类型(字符串string、数值number、布尔boolean ),两种引用数据类型(对象Object、数组Array)和两种特殊数据类型(Null 、Undefined )。其它类型向bool类型转换时的有如下原则:

数据类型 转换为bool后的值
null FALSE
undefined FALSE
Object TRUE
function TRUE
0 FALSE
1 TRUE
0、1之外的数字 TRUE
字符串 TRUE
""(空字符串) FALSE

此时,IsLink在JSON中为字符串“false”,所以转换后得到bool类型true。

处理办法:

document.getElementById("checkbox1").checked = news.IsLink==“true";
Javascript 相关文章推荐
基于jquery实现点击左右按钮图片横向滚动
Apr 11 Javascript
关于jQuery新的事件绑定机制on()的使用技巧
Apr 26 Javascript
javascript匿名函数实例分析
Nov 18 Javascript
js实现的二分查找算法实例
Jan 21 Javascript
jQuery插件实现适用于移动端的地址选择器
Feb 18 Javascript
jquery对Json的各种遍历方法总结(必看篇)
Sep 29 Javascript
jQuery、zepto、js常用小技巧
Feb 12 Javascript
JS实现图片预览的两种方式
Jun 27 Javascript
使用JQ完成表格隔行换色的简单实例
Aug 25 Javascript
一步步教会你微信小程序的登录鉴权
Apr 09 Javascript
通过js实现压缩图片上传功能
Feb 25 Javascript
jquery实现进度条状态展示
Mar 26 jQuery
下拉列表选择项的选中在不同浏览器中的兼容性问题探讨
Sep 18 #Javascript
jquery 实现密码框的显示与隐藏示例代码
Sep 18 #Javascript
script不刷新页面的联动前后代码
Sep 18 #Javascript
js 中的switch表达式使用示例
Jun 03 #Javascript
javascript实现促销倒计时+fixed固定在底部
Sep 18 #Javascript
jquery等宽输出文字插件使用介绍
Sep 18 #Javascript
使用indexOf等在JavaScript的数组中进行元素查找和替换
Sep 18 #Javascript
You might like
php使用PDO从数据库表中读取数据的实现方法(必看)
2017/06/02 PHP
静态页面下用javascript操作ACCESS数据库(读增改删)的代码
2007/05/14 Javascript
ext for eclipse插件安装方法
2008/04/27 Javascript
定义select的边框颜色
2008/04/28 Javascript
读jQuery之六 缓存数据功能介绍
2011/06/21 Javascript
jquery实现控制表格行高亮实例
2013/06/05 Javascript
jquery+json实现数据列表分页示例代码
2013/11/15 Javascript
网页右侧悬浮滚动在线qq客服代码示例
2014/04/28 Javascript
JS往数组中添加项性能分析
2015/02/25 Javascript
javascript实现日期时间动态显示示例代码
2015/09/08 Javascript
jQuery使用cookie与json简单实现购物车功能
2016/04/15 Javascript
AngularJS 表达式详细讲解及实例代码
2016/07/26 Javascript
jQuery实现表格隔行及滑动,点击时变色的方法【测试可用】
2016/08/20 Javascript
JS图片放大效果简单实现代码
2016/09/08 Javascript
浅谈JS使用[ ]来访问对象属性
2016/09/21 Javascript
AngularJS解决ng-if中的ng-model值无效的问题
2017/06/21 Javascript
webpack使用 babel-loader 转换 ES6代码示例
2017/08/21 Javascript
js HTML5 canvas绘制图片的方法
2017/09/08 Javascript
详释JavaScript执行环境与执行栈
2019/04/02 Javascript
js 下拉菜单点击旁边收起实现(踩坑记)
2019/09/29 Javascript
JS动态图片的实现方法完整示例
2020/01/13 Javascript
[02:53]2018年度DOTA2最佳战队-完美盛典
2018/12/17 DOTA
解决python写的windows服务不能启动的问题
2014/04/15 Python
[原创]windows下Anaconda的安装与配置正解(Anaconda入门教程)
2018/04/05 Python
python批量修改文件编码格式的方法
2018/05/31 Python
python爬虫URL重试机制的实现方法(python2.7以及python3.5)
2018/12/18 Python
python2.7的flask框架之引用js&amp;css等静态文件的实现方法
2019/08/22 Python
tensorflow:指定gpu 限制使用量百分比,设置最小使用量的实现
2020/02/06 Python
django 连接数据库出现1045错误的解决方式
2020/05/14 Python
python中元组的用法整理
2020/06/15 Python
党员领导干部民主生活会批评与自我批评发言
2014/09/28 职场文书
歌咏比赛口号大全
2015/12/25 职场文书
写作指导:怎么书写竞聘演讲稿?
2019/07/04 职场文书
CSS3 实现的图片悬停的切换按钮
2021/04/13 HTML / CSS
Go标准容器之Ring的使用说明
2021/05/05 Golang
关于EntityWrapper的in用法
2022/03/22 Java/Android