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

 更新时间:2013年09月18日 17:46:23   作者:  
如果服务器端生成的JSON中有bool类型的数据时,到客户端解析时出现了小小的问题,下面简单为大家介绍下正确的处理方式
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";

相关文章

  • 去除有数组中重复的元素

    去除有数组中重复的元素

    数组 重复采用的是Object的 in 操作符,体现一把它的强大(有更好的办法来实现这个功能,但是这里只是演示 in 操作符)!
    2008-03-03
  • Java SE 9 多版本兼容 JAR 包示例

    Java SE 9 多版本兼容 JAR 包示例

    这篇文章主要介绍了Java SE 9 多版本兼容 JAR 包示例,Java 9 版本中增强了Jar 包多版本字节码文件格式支持,也就是说在同一个 Jar 包中我们可以包含多个 Java 版本的 class 文件,更多相关内容感兴趣的小伙伴可以参考一下
    2022-08-08
  • JavaScript设计模式之性能优化模式享元模式

    JavaScript设计模式之性能优化模式享元模式

    这篇文章主要介绍了JavaScript设计模式之性能优化模式享元模式,享元设计模式是用于性能优化的模式,这种设计模式的核心在于可以共享技术并支持对大量细分过后的对象进行调整,更多相关内容需要的小伙伴可以参考一下
    2022-06-06
  • js实现踩五彩块游戏

    js实现踩五彩块游戏

    这篇文章主要为大家详细介绍了js实现踩五彩块游戏,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-02-02
  • js从外部获取图片的实现方法

    js从外部获取图片的实现方法

    下面小编就为大家带来一篇js从外部获取图片的实现方法。小编觉得挺不错的, 现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-08-08
  • 动态创建按钮的JavaScript代码

    动态创建按钮的JavaScript代码

    本文给大家分享一段JS实例代码介绍动态创建按钮的方法,需要的朋友参考下本文
    2016-01-01
  • 开源一个微信小程序仪表盘组件过程解析

    开源一个微信小程序仪表盘组件过程解析

    这篇文章主要介绍了开源一个微信小程序仪表盘组件过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-07-07
  • js中int和string数据类型互相转化实例

    js中int和string数据类型互相转化实例

    在本篇文章里小编给大家分享了关于js中int和string数据类型互相转化实例和代码,需要的朋友们学习下。
    2019-01-01
  • IE9+已经不对document.createElement向下兼容的解决方法

    IE9+已经不对document.createElement向下兼容的解决方法

    这篇文章主要介绍了IE9+已经不对document.createElement向下兼容的解决方法,需要的朋友可以参考下
    2015-09-09
  • js实现坦克移动小游戏

    js实现坦克移动小游戏

    这篇文章主要为大家详细介绍了js实现坦克移动小游戏,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-10-10

最新评论