开发者社区 问答 正文

ios 怎么发送包含 boolean 类型的 json 到服务器

比如这样的

http://localhost:8080/v1/client/user?user_list=[{"is_delete":false,"id":26}]

展开
收起
杨冬芳 2016-06-28 11:41:50 5209 分享 版权
1 条回答
写回答
取消 提交回答
  • IT从业

    向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";

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

    服务器返回的JSON为:
    代码如下:

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


    "}

    其中属性:IsLink和IsPic都是bool类型,在客户端使用方法:
    代码如下:

    document.getElementById("checkbox1").checked = news.IsLink;

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

    查其原因,javascript 有三种基本数据类型(字符串string、数值number、布尔boolean ),两种引用数据类型(对象Object、数组Array)和两种特殊数据类型(Null 、Undefined )。

    2019-07-17 19:48:08
    赞同 展开评论