在js代码中,如果需要判断一个变量值或指定数组中某个索引值是否已经定义可以用undefined也可以用null来表示.
代码如下:
<script type="text/javascript">
if(abc === undefined) {
alert("未定义变量abc");
}else{
alert("已经定义abc");
}
</script>
需要注意的是用undefined来表示未定义的话需要用===全等号来判断.
<script type="text/javascript">
if(efg == null) {
alert("未定义变量efg");
}
</script>
当我们在使用for循环输出一个数组时,按照以下代码去执行:
<script type="text/javascript">
var newsz=['11','22','33'];
for(var i,i<5,i=0){
console.log(newsz[i]);
}
</script>
如果循环次数超出数组数组中索引值浏览器控制台会不停的输出错误.我们也可以使用以上两种方式加个判断解决输出错误.
<script type="text/javascript">
var newsz=['11','22','33'];
for(var i,i<5,i=0){
if(newsz[i] != null) {
console.log(newsz[i]);
}
}
</script>
其它一些不常用的方法还有:
<script type="text/javascript">
if(abc == "") {
alert("abc值为空或未定义");
}
if(abc) {
alert("abc值为空或未定义");
}
</script>
或者
<script type="text/javascript">
if(!$.trim(efg)){
console.log("efg为空");
}
</script>
用""空的双引号、或者trim以及直接变量名称来表达.
在js中如果需要判断一个数组是否为空数组或未定义又该怎样判断呢?
我们可以使用length属性以及isEmptyObject来判断.
<script type="text/javascript">
if(hij.length==0) {
console.log(hij);
}
if(!hij.length) {
console.log(hij);
}
</script>
或者使用
<script type="text/javascript">
if($.isEmptyObject(aaa)){
alert("aaa值为空");
}
</script>