DIV CSS 佈局教程網

 DIV+CSS佈局教程網 >> 網頁腳本 >> JavaScript入門知識 >> 關於JavaScript >> JSON傳遞bool類型數據的處理方式介紹
JSON傳遞bool類型數據的處理方式介紹
編輯:關於JavaScript     
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";
XML學習教程| jQuery入門知識| AJAX入門| Dreamweaver教程| Fireworks入門知識| SEO技巧| SEO優化集錦|
Copyright © DIV+CSS佈局教程網 All Rights Reserved