ajax中使用json傳遞數據時,其它數據類型都不是問題,可是若是服務器端生成的JSON中有bool類型的數據時,到客戶端解析時出現了小小的問題,總結以下:
服務器返回的JSON爲: javascript
其中屬性:IsLink和IsPic都是bool類型,在客戶端使用方法: java
會選中複選框,可是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。
處理辦法: ajax