首頁 > web前端 > js教程 > 主體

js判斷是否為空字串的簡寫方法實例詳解

伊谢尔伦
發布: 2017-07-18 13:50:57
原創
2005 人瀏覽過

先看一下程式碼:

if (variable1 !== null || variable1 !== undefined || variable1 !== '') { 
var variable2 = variable1; 
}
登入後複製

上面的意思是說如果variable1不是一個空對象,或是未定義,或不等於空字串,那麼就宣告一個variable2變量,將variable1賦給variable2。也就是說如果variable1存在那麼就將variable1的值賦給variable2,若不存在則為空字串。如下面的簡寫程式碼。
簡寫程式碼:
程式碼如下 

var variable2 = variable1 || '';
登入後複製

以下是不正確的方法:
程式碼如下 

var exp = null; 
if (exp == null) { alert("is null"); }
登入後複製

exp 為undefined 時,也會得到與null 相同的結果,雖然null 和undefined 不一樣。注意:要同時判斷 null 和 undefined 時可使用本法。
程式碼如下 

var exp = null; 
if (!exp) 
{ 
alert("is null"); 
}
登入後複製

如果 exp 為 undefined,或數字零,或 false,也會得到與 null 相同的結果,雖然 null 和二者不一樣。注意:要同時判斷 null、undefined、數字零、false 時可使用本法。
程式碼如下 

var exp = null; 
if (typeof exp == "null") 
{ 
alert("is null"); 
}
登入後複製

為了向下相容,exp 為 null 時,typeof null 總回傳 object,所以不能這樣判斷。
程式碼如下 

var exp = null; 
if (isNull(exp)) 
{ 
alert("is null"); 
}
登入後複製

判斷字串是否為空
s 匹配任何空白字符,包括空格、製表符、換頁符等等。等價於 [ fnrtv]。 很多情況下,都是用length來直接判斷字串是否為空,如下:
代碼如下 

var strings = ''; 
if (string.length == 0) 
{ 
alert('不能为空'); 
}
登入後複製

但如果用戶輸入的是空格,製表符,換頁符呢?這樣的話,也是不為空的,但是這樣的數據就不是我們想要的。
其實可以用正規表示式來把這些「空」的符號去掉來判斷的
代碼如下 

var strings = ' '; 
if (strings.replace(/(^s*)|(s*$)/g, "").length ==0) 
{ 
alert('不能为空'); 
}
登入後複製

s 小寫的s是,匹配任何空白字符,包括空格、製表符、換頁符號等等。

#

以上是js判斷是否為空字串的簡寫方法實例詳解的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
最新問題
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!