现在只说特殊情况:

1、一个变量,例如n1=null

<script>
var n1 = null;
alert(n1);/*弹窗的值为null*/
if (n1 == null) {/*如果是if(n1)将不会执行里面的函数体*/
alert("弹窗了");
}
</script>

2、一个变量,例如n1,不赋值

<script>
var n1;
alert(n1);/*弹窗的值为undefined*/
if (typeof (n1) == "undefined") {/*如果是if(n1)或者if(n1=="undefined")将不会执行里面的函数体*/
alert("弹窗了");
}
</script>

3、一个变量,例如n1,n1=“”

<script>
var n1 = "";
alert(n1);/*弹窗的值为空(什么都不显示,但是会弹窗)*/
if (n1 == "") {/*如果是if(n1)将不会执行里面的函数体*/
alert("弹窗了");
}
</script>

4、一个变量,例如n1,n1=“    ”

<script>
var n1 = " ";
alert(n1);/*弹窗的值为空(什么都不显示,但是会弹窗)*/
if (n1) {/*如果是n1.trim().length > 0将不会执行里面的函数体*/
alert("弹窗了");
}
</script>

5、一个变量,例如n1,n1=0,n2不赋值

<script>
var n1 = 0;
var n2;
alert(n1 + n2);/*弹窗的值为NaN*/
if (isNaN(n1 + n2)) {/*如果是if (n1 + n2)将不会执行里面的函数体*/
alert("弹窗了");
}
</script>

6、对于上述的情况,除了n1=“    ”赋值的是多个空格这个特殊情况,其他都可以用下述代码来判断

if (!n1)

注释:因为上述几种情况,直接写if(n1)或者if(n1+n2)都不会直接执行函数体中的代码,所以这样写也是可行。

JS——if条件判断的更多相关文章

  1. js之条件判断

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  2. JS中条件判断语句

    用pycharm敲代码时,在.js文件中敲,敲完之后复制代码到浏览器的console中去回车执行 1.if(  ){} 2.switch(a){} 3.for循环 循环列表 循环字典 循环字符串 另外 ...

  3. JS条件判断

    JavaScript 是一种可以在浏览器中运行的脚本语言,是一种弱语言(相对于C,C#,JAVA而言),只要是计算机语言就会使用到条件判断式,而JavaScript作为一种“弱”语言,它的条件判断常常 ...

  4. PHP和JS在循环、条件判断中的不同之处

    一.条件判断: php中算  false 的情况 1. boolean:false 2. 整形:0 3.浮点型:0 4.字符串:"" "0"(其他都对) 5.空 ...

  5. js条件判断时隐式类型转换

    Javascript 中,数字 0 为假,非0 均为真 在条件判断运算 == 中的转换规则是这样的: 如果比较的两者中有布尔值(Boolean),会把 Boolean 先转换为对应的 Number,即 ...

  6. js条件判断if-else和switch、循环for和while

    条件判断和循环都使用{ }将代码块括起来,如果代码块只有一行,则可省略{ }. 在循环中,continue表示跳过当前循环继续进行下一次循环,break表示跳出整个循环. 1.条件判断if-else, ...

  7. JS 多个条件判断

    // 多个条件判断 // 对象序列(Object) 推荐使用这一种 var obj = {'CJ':'成交', 'WCJ':'未成交'}; if (key in obj) { // TODO } // ...

  8. a标签根据js返回值判断页面是否跳转

    a标签再跳转之前先判断是否符合条件,符合可以跳转,不符合不可以跳转. 自己遇到的问题是:在js方法中根据条件就return结果,但是不行. 原因是:在js方法中return后不会结束整个js方法(ac ...

  9. CSS3条件判断——@supports/window.CSS.supports()(转)

    CSS3条件判断,听起来"不明觉厉",如果你对CSS稍为熟悉一点的话,你会发现CSS中的"@media"就是条件判断之一.是的,在CSS3的条件判断规范文档中包 ...

随机推荐

  1. $inject的用法

    controller后面的$inject是用来注入函数的变量名称的

  2. T1097 校门外的树 codevs

    http://codevs.cn/problem/1097/ 题目描述 Description 某校大门外长度为L的马路上有一排树,每两棵相邻的树之间的间隔都是1米.我们可以把马路看成一个数轴,马路的 ...

  3. LVS中文站点

    http://blog.csdn.net/turkeyzhou/article/details/16980161 http://zh.linuxvirtualserver.org/

  4. [转]《MEF程序设计指南》博文汇总

    在MEF之前,人们已经提出了许多依赖注入框架来解决应用的扩展性问题,比如OSGI 实现以Spring 等等.在 Microsoft 的平台上,.NET Framework 自身内部包含组件模型和 Sy ...

  5. [Elasticsearch] 集群的工作原理 - 第一部分

    本文翻译自Elasticsearch官方指南的life inside a cluster一章. ES就是为高可用和可扩展而生的. 扩展能够通过购置性能更强的server(垂直扩展或者向上扩展,Vert ...

  6. Android自定义用户控件简单范例(一)

    一款优秀的移动应用需要具有自己独特统一的风格,通常情况下UI设计师会根据产品需求和使用人群的特点,设计整体的风格,界面的元素和控件的互效果.而原生态的Android控件为开发人员提供的是最基本的积木元 ...

  7. 三种常见的编码:ASCII码、UTF-8编码、Unicode编码等字符占领的字节数

    ASCII码: 一个英文字母(不分大写和小写)占一个字节的空间.一个中文汉字占两个字节的空间. 一个二进制数字序列,在计算机中作为一个数字单元,一般为8位二进制数,换算为十进制. 最小值0,最大值25 ...

  8. side-stepping the Global Interpreter Lock by using subprocesses instead of threads

    16.6. multiprocessing — Process-based “threading” interface — Python 2.7.14 documentation https://do ...

  9. P4111 [HEOI2015]小Z的房间 生成树计数

    这个题是生成树计数的裸题,中间构造基尔霍夫矩阵,然后构成行列式,再用高斯消元就行了.这里高斯消元有一些区别,交换两行行列式的值变号,且消元只能将一行的数 * k 之后加到别的行上. 剩下就没啥了... ...

  10. bzoj4872

    期望dp 首先如果k=n的话,那么我们从后往前,只要看到两者的灯就关上,因为如果当前一个灯没关上,那么之后不可能关上,一个灯只能由自己倍数控制,所以这样我们就计算出了需要操作的次数,如果这个次数< ...