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

(0)

相关推荐

  • c#处理3种json数据的实例

    网络中数据传输经常是xml或者json,现在做的一个项目之前调其他系统接口都是返回的xml格式,刚刚遇到一个返回json格式数据的接口,通过例子由易到难总结一下处理过程,希望能帮到和我一样开始不会的朋友. 一.C#处理简单json数据 json数据: 复制代码 代码如下: {"result":"0","res_info":"ok","queryorder_info":"info"} 我这

  • json数据处理技巧(字段带空格、增加字段、排序等等)

    1.json数据的正常取值:json[i].fieldName 2.json数据的字段带空格:eval('json[' + i + ']["' + field + '"]') 3.json数据的赋值:eval('json[' + i + ']["' + field + '"]=' + jsonFilter.length); 4.json数据增加字段:循环所有数据,直接json[i].newField=defaultValue就可以了 5.json数据的排序:相当于数

  • python处理json数据中的中文

    python中自带了处理python的模块,使用时候直接import json即可. 使用loads方法即可将json字符串转换成python对象,对应关系如下: JSON     Python object   dict array    list string   unicode number   (int) int, long number   (real) float true     True false    False null     None 但在使用json模块的时候需要注意

  • jquery序列化form表单使用ajax提交后处理返回的json数据

    1.返回json字符串: 复制代码 代码如下: /** 将一个字符串输出到浏览器 */     protected void writeJson(String json) {         PrintWriter pw = null;         try {             servletResponse.setContentType("text/plain;charset=UTF-8");             pw = servletResponse.getWrit

  • jQuery jqgrid 对含特殊字符json 数据的 Java 处理方法

    看到很多网上对含特殊字符 json 数据处理,都是逐个判断是哪个特殊字符,比如回车如何处理,引号如何处理.其实有现成的代码库可以做这件事情,下载 json-lib-2.3-jdk15.jar : 复制代码 代码如下: import net.sf.json.util.JSONUtils; String str = (String) value; String s1 = JSONUtils.quote(str);//首尾带引号 String s3 = JSONUtils.stripQuotes(s1

  • 详谈 Jquery Ajax异步处理Json数据.

    所谓的Ajax.这里我们讲二种方法 方法一:(微软有自带Ajax框架) 在Asp.net里微软有自己的Ajax框架.就是在页面后台.cs文件里引入 using System.Web.Services 空间 然后定义静态方法(方法前加上 [WebMethod]) [WebMethod] public static string ABC(string ABC) { return ABC; } 好了,现在我们谈谈前台Js怎么处理后台返回的数据吧,可利用Jquery处理返回的纯html,json,Xml

  • JSON复杂数据处理之Json树形结构数据转Java对象并存储到数据库的实现

    在网站开发中经常遇到级联数据的展示,比如选择城市的时候弹出的省市县选择界面.很多前端制作人员习惯于从JSON中而不是从数据库中获取省市县数据.那么在选择了省市县中的某一个城市 ,存储到数据库中需要存储所选城市的代码.所以需要一个能将JSON数据(一般存储在javascript脚本中)结构全部导入到数据库中的功能. JSON的特点是支持层级结构.支持数组表示的对象 .下面的示例介绍如何将JSON的省市县数据保存到数据库中,实现原理非常简单,就是利用JSON的java工具包API,将层次结构的JSO

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

    ajax中使用json传递数据时,其它数据类型都不是问题,但是如果服务器端生成的JSON中有bool类型的数据时,到客户端解析时出现了小小的问题,总结如下: 服务器返回的JSON为: 复制代码 代码如下: {"TypeID":[1037],"Title":"河北软件职业技术学院","Intro":"","IsLink":"false","LinkUrl&qu

  • C++与QML进行数据交互实现方式介绍

    目录 一.定义可交互的类 二.数据操作类 三.注册 四.qml调用 我所使用的方式,是通过C++调用远端的webservice,再次数据送到qml端,不说原理了,直接上代码的实现过程.需要明白一点:qml不接受QList的类方式,所以使用了QList<QObject*>.大致分为四步,按需要看: 一.定义可交互的类 可以IDE生成中选择基类为QObject完成即可,基本代码自动生成. h: #ifndef TEST_H #define TEST_H #include <QObject&g

  • java long 类型数据的赋值方式

    目录 java long类型数据的赋值 问题 解决 把null赋值给long产生的奇怪问题 问题产生的原因 java long类型数据的赋值 问题 当程序出现较大的数值的时候(超过int类型:-2^31 到 2^31 - 1间),就需要将类型变成Long类型. long l = 1507772738542; Long l1 = (long)1507772738542; 以上的写法,在编译的时候会报错, 大概的意思就是数据太长,超过了int类型的值. 解决 Long l = 15077727385

  • Mysql使用函数json_extract处理Json类型数据的方法实例

    目录 1. 需求概述 2. json_extract简介 2.1 函数简介 2.2 使用方式 2.3 注意事项 3. 实现验证 3.1 建表查询 3.2 查询结果 总结 1. 需求概述 业务开发中通常mysql数据库中某个字段会需要存储json格式字符串,查询的时候有时json数据较大,每次全部取出再去解析查询效率较低,也比较麻烦,则Mysql5.7版本提供提供函数json_extract,可以通过key查询value值,比较方便. 2. json_extract简介 2.1 函数简介 Mysq

  • Mysql 直接查询存储的Json字符串中的数据

    我们平时使用mysql,出于项目需求,可能需要直接将Java对象或者一个大json,直接存到表中的某个字段中:使用的时候再查出来,反序列化到对象或者一个Map中,方便我们操作: 大多时候,我们可能并不需要所有的数据,只想使用这个对象或者json中的某一个值,来做逻辑判断而已 那我们可以这样做,例如:原来我们需要查出某个字段的数据,然后反序列化成对象再调用其中的一个属性 SELECT content FROM table_name WHERE id = 32; 查询结果:列名:content结果:

  • Android使用Intent传递组件大数据

    目录 数据传输 替代方案 数据传输 在Android开发过程中,我们常常通过Intent在各个组件之间传递数据.例如在使用startActivity(android.content.Intent)方法启动新的 Activity 时,我们就可以通过创建Intent对象然后调用putExtra() 方法传输参数. val intent = Intent(this, TestActivity::class.java) intent.putExtra("name","name&quo

  • Vue中如何获取json文件中的数据

    目录 场景 实现 场景 访问百度音乐API需要传递音乐类型参数,而这些参数是存在musictype.json中, 现在在组件listcate.vue需要获取json数据. json文件内容: 文件位置: 实现 musictype.json { "currentType":[1,2,11,21,22,23,24,25] } listcate.vue <template lang="html"> <div> <ListCate_List v

  • Spring依赖注入多种类型数据的示例代码

    目录 Student实体类 StudentsClass实体类 beans.xml 测试 Student实体类 package entity; import java.util.*; /** * @author LeDao * @company * @create 2022-02-13 21:26 */ public class Student { private int id; private String name; private StudentClass studentClass; pri

  • C#使用System.Buffer以字节数组Byte[]操作基元类型数据

    1. Buffer.ByteLength:计算基元类型数组累计有多少字节组成. 该方法结果等于"基元类型字节长度 * 数组长度" var bytes = new byte[] { 1, 2, 3 }; var shorts = new short[] { 1, 2, 3 }; var ints = new int[] { 1, 2, 3 }; Console.WriteLine(Buffer.ByteLength(bytes)); // 1 byte * 3 elements = 3

  • Vue中请求本地JSON文件并返回数据的方法实例

    目录 1.目录结构 2.检查一下自己是否安装了 json-server(以下截图代表安装了) 3.安装完成以后我们就可以运行自己的json文件了 4.看看浏览器里的数据呈现效果吧 5.为了保险起见,我还特地去 postman 上测试了一下(可以省略这步) 6.现在我们可以编写代码发送请求来获取数据啦 7.在控制台就可以看到我们数据请求回来了 总结 1.目录结构 直接在根目录下创建自己的JSON文件,在此我的JSON文件名为data.json 以下是我的JSON文件内容(此处是参照的黑马程序员的v

随机推荐