A. js中,如何判斷一個對象的值是不是NULL
大多數都是通過直接比較的,類似於:
if(對象 == null)這是高級語言比較的方式,如果js的話,需要使用typeof的方式比較undefined的形式進行判斷是否為空。
B. js 判斷是否為空
判斷undefined:
vartmp=undefined;if(typeof(tmp)=="undefined"){alert("undefined");}
說明:typeof 返回的是字元串,有六種可能:"number"、內"string"、"boolean"、"object"、"function"、"undefined"
判斷null:
vartmp=null;if(!tmp&&typeof(tmp)!="undefined"&&tmp!=0){alert("null");}
判斷NaN:
vartmp=0/0;if(isNaN(tmp)){alert("NaN");}
≅:鬆散等於等於檢查(==), 比如: "1" == true; [] =="0"
=:全等或恆等全等檢查(===)
C. JS怎麼判斷一個對象是否為空
判斷一個對象是否為空,介紹如下三種判斷方法:
1、直接用for...in...遍歷屬性,結果為真是「非版空數組」,否則是權「空數組」,代碼如下:
if(Object.keys(obj).length==0){
console.log('空對象');
}else{
console.log('非空對象');
}
D. 在js中如何進行非空驗證
需要准備的材料分別有:電腦、html編輯器、瀏覽器。
1、首先,打開html編輯器,新建html文件,例如:index.html。
E. JS 數組對象判斷屬性值是否為空
var arr=[
{ name:'黃金', weight:'', number:'' },
{ name:'白銀', weight:'', number:'' },
{ name:'翡翠', weight:'', number:''}
]
// 方法1, 設置抄檢查標記bool值, 遍歷數組, 當 weight 和 number 都不為空時變更標記值
var result = false;
for(var item of arr){
if(item.weight != '' && item.number != ''){
result = true;
}
}
console.log(result?'通過':'不通過')
// 方法2, 使用 filter 過濾數組, 將數組中所有符合 weight 非空且 number 非空的數據保留, 其他的丟棄, 最終檢查過濾後數組的長度是否大於0
var filter_res = arr.filter(item => item.weight != '' && item.number != '')
console.log(filter_res.length > 0 ? '通過': '不通過')
F. js中如何判斷字元串為空字元串
下面就是有關判斷為空的簡寫方法。
代碼如下
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('不能為空');
}