JavaScript處理null、undefined和空值


最近一直在寫前端,在使用jquery的ajax請求然后處理返回值的時候,經常會遇到返回值為undefined或者"null"的情況,很是頭疼,而返回接口是來自於其他公司的,所以這種情況必須交由前端來處理。然后想起來在Java中常用的StringUtil類,里面經常有isBlank()、isNullOrEmpty()等方法。后來想到,與其寫一個返回true或者false的方法,不如直接寫一個remove的方法,代碼也很簡單:

var Tools = {}; /** * 移除空字符串或者非法字符串,返回"" * 如果是合法字符串,則返回原值 * @param obj 文本 */ Tools.removeNullOrUndefined = function (obj) { //typeof 返回的是字符串,有六種可能:"number"、"string"、"boolean"、"object"、"function"、"undefined" if (typeof(obj) == "undefined" || obj == "" || obj == null || obj == "null" || obj.length == 0) { return ""; } else { //刪除全是空格的情況 var regu = "^[ ]+$"; var re = new RegExp(regu); if(re.test(obj)){ return ""; }else{ return obj; } } }

有了這個方法,在處理返回值的時候,套用這個函數,就可以避免在頁面直接展示null或者undefined的尷尬。

同時,通過正則去除用戶輸入多個空格的判空情況。

PS:因為是js新手,所以代碼沒有考慮到性能,以后深入了再優化。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM