[問題] 用ajax從php傳資料回js時,false的定義
最近發現一個奇怪的問題
我用AJAX從php傳資料回js
就是在php端echo,在js端用 var data = xhr.responseText 接收
發生一個奇怪的狀況
我如果傳int 0回來
js接到的會變成string: "0"
typeof data 為string
根據js定義字串非空就是true
所以if(data){...} 他會當成true而跑進判斷式
但如果我傳boolen false回來
他的typeof data 依然是 string
但是if(data){...} 他卻會當成false而不會進判斷式裡面了
但理論上js如果放string "false" 應該是會被當成true的
我有點搞不懂他的邏輯了...
想請教一下高手們這邊設計的邏輯?
為什麼他會強制把0轉成string?
為什麼type是string的false又可以當boolen false用?
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 220.133.61.45
→
03/21 11:24, , 1F
03/21 11:24, 1F
→
03/22 22:04, , 2F
03/22 22:04, 2F
→
03/22 22:04, , 3F
03/22 22:04, 3F
Ajax 近期熱門文章
PTT數位生活區 即時熱門文章