js判斷為空白Null與字串為空白簡寫方法
最近開始研究JavaScript的簡寫方法,下面就是有關判斷為空白的簡寫方法
最近突然發現自己寫的JavaScript代碼比較臃腫,所以開始研究JavaScript的簡寫方法。這樣一來,可以讓我們的JavaScript代碼看起來比較清爽,同時也可以提高我們的技術。那麼判斷為空白怎麼簡寫呢?
下面就是有關判斷為空白的簡寫方法。
代碼如下:
if (variable1 !== null || variable1 !== undefined || variable1 !== '') {
var variable2 = variable1;
}
上面的意思是說如果variable1不是一個Null 物件,或者未定義,或者不等於Null 字元串,那麼聲明一個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('不可為空');
}
但如果使用者輸入的是空格,定位字元,換頁符呢?這樣的話,也是不為空白的,但是這樣的資料就不是我們想要的吧。
其實可以用Regex來把這些“空”的符號去掉來判斷的
代碼如下:
var strings = ' ';
if (strings.replace(/(^s*)|(s*$)/g, "").length ==0)
{
alert('不可為空');
}
s 小寫s是,匹配任何空白字元,包括空格、定位字元、換頁符等等。等價於 [ fnrtv]。
判斷為空白怎麼簡寫,就為大家介紹到這裡,希望上面的方法能對大家有所協助。