Js驗證特性
近期項目中前端遇到一個很糾結的問題,表單傳入數據有用戶輸入了一個0,在進行修改操作的時候發現這個字段存入的0到了後端變成了null
item.value && item.value.value||null
本身表單驗證0是可以通過的(字符串的情況下),但是由於Js的一個坑人的特性,導致表單一直傳空值,那就是,在Js中,0==false,如果直接做驗證的時候,0代表false,由於後端傳入的值是數字0,前端獲取到這個值之後,在上邊代碼的驗證下就變成了false,所以直接執行了賦值null的操作。
所以,在前端做驗證的時候要按實際出發,有時候一些驗證真的沒必要加,加上不但沒有起到效果,反而適得其反。