JavaScript条件判断_动力节点Java学院整理


Posted in Javascript onJune 26, 2017

JavaScript使用if () { ... } else { ... }来进行条件判断。例如,根据年龄显示不同内容,可以用if语句实现如下:

var age = 20;
if (age >= 18) { // 如果age >= 18为true,则执行if语句块
  alert('adult');
} else { // 否则执行else语句块
  alert('teenager');
}

其中else语句是可选的。如果语句块只包含一条语句,那么可以省略{}:

var age = 20;
if (age >= 18)
  alert('adult');
else
  alert('teenager');

省略{}的危险之处在于,如果后来想添加一些语句,却忘了写{},就改变了if...else...的语义,例如:

var age = 20;
if (age >= 18)
  alert('adult');
else
  console.log('age < 18'); // 添加一行日志
  alert('teenager'); // <- 这行语句已经不在else的控制范围了

上述代码的else子句实际上只负责执行console.log('age < 18');,原有的alert('teenager');已经不属于if...else...的控制范围了,它每次都会执行。

相反地,有{}的语句就不会出错:

var age = 20;
if (age >= 18) {
  alert('adult');
} else {
  console.log('age < 18');
  alert('teenager');
}

这就是为什么我们建议永远都要写上{}。

多行条件判断

如果还要更细致地判断条件,可以使用多个if...else...的组合:

var age = 3;
if (age >= 18) {
  alert('adult');
} else if (age >= 6) {
  alert('teenager');
} else {
  alert('kid');
}

上述多个if...else...的组合实际上相当于两层if...else...:

var age = 3;
if (age >= 18) {
  alert('adult');
} else {
  if (age >= 6) {
    alert('teenager');
  } else {
    alert('kid');
  }
}

但是我们通常把else if连写在一起,来增加可读性。这里的else略掉了{}是没有问题的,因为它只包含一个if语句。注意最后一个单独的else不要略掉{}。

请注意,if...else...语句的执行特点是二选一,在多个if...else...语句中,如果某个条件成立,则后续就不再继续判断了。

Javascript 相关文章推荐
服务器端的JavaScript脚本 Node.js 使用入门
Mar 07 Javascript
一个简单的jQuery插件ajaxfileupload.js实现ajax上传文件例子
Jun 26 Javascript
javascript生成不重复的随机数
Jul 17 Javascript
正则表达式优化JSON字符串的技巧
Dec 24 Javascript
mvc中form表单提交的三种方式(推荐)
Aug 10 Javascript
详解Vue.use自定义自己的全局组件
Jun 14 Javascript
Angular中响应式表单的三种更新值方法详析
Aug 22 Javascript
浅谈js闭包理解
Apr 01 Javascript
微信小程序实现图片上传
May 23 Javascript
JS函数基本定义与用法示例
Jan 15 Javascript
基于vue的video播放器的实现示例
Feb 19 Vue.js
vue实现在data里引入相对路径
Jun 05 Vue.js
JavaScript脚本语言是什么_动力节点Java学院整理
Jun 26 #Javascript
JavaScript简介_动力节点Java学院整理
Jun 26 #Javascript
JavaScript数组_动力节点Java学院整理
Jun 26 #Javascript
Angular 表单控件示例代码
Jun 26 #Javascript
jQuery实现一个简单的验证码功能
Jun 26 #jQuery
jQuery+C#实现参数RSA加密传输功能【附jsencrypt.js下载】
Jun 26 #jQuery
JavaScript实现三级联动菜单实例代码
Jun 26 #Javascript
You might like
深入理解PHP之require/include顺序 推荐
2011/01/02 PHP
DEDE采集大师官方留后门的删除办法
2011/01/08 PHP
一些PHP Coding Tips(php小技巧)[2011/04/02最后更新]
2011/05/02 PHP
PHP简单处理表单输入的特殊字符的方法
2016/02/03 PHP
php自定义截取中文字符串-utf8版
2017/02/27 PHP
jquery 学习笔记 传智博客佟老师附详细注释
2020/09/12 Javascript
在chrome中window.onload事件的一些问题
2010/03/01 Javascript
jquery 实现表单验证功能代码(简洁)
2012/07/03 Javascript
利用JavaScript检测CPU使用率自己写的
2014/03/22 Javascript
JavaScript中的比较操作符&gt;、=、
2014/12/31 Javascript
javascript操作ul中li的方法
2015/05/14 Javascript
文本框只能输入数字的js代码(含小数点)
2016/07/10 Javascript
javascript实现的上下无缝滚动效果
2016/09/19 Javascript
jQuery 表单序列化实例代码
2017/06/11 jQuery
JS中的三个循环小结
2017/06/20 Javascript
js使用highlight.js高亮你的代码
2017/08/18 Javascript
vue-cli + sass 的正确打开方式图文详解
2017/10/27 Javascript
在vue中使用G2图表的示例代码
2019/03/19 Javascript
微信小程序使用websocket通讯的demo,含前后端代码,亲测可用
2019/05/22 Javascript
vue 解决移动端弹出键盘导致页面fixed布局错乱的问题
2019/11/06 Javascript
python实现迭代法求方程组的根过程解析
2019/11/25 Javascript
vue实现井字棋游戏
2020/09/29 Javascript
JS如何实现在弹出窗口中加载页面
2020/12/03 Javascript
python实现文件路径和url相互转换的方法
2015/07/06 Python
Python输出汉字字库及将文字转换为图片的方法
2016/06/04 Python
Python时间戳使用和相互转换详解
2017/12/11 Python
jupyter notebook指定启动目录的方法
2021/03/02 Python
美国香薰蜡烛品牌:PADDYWAX
2018/10/06 全球购物
安全宣传标语口号
2014/06/06 职场文书
教师个人读书活动总结
2014/07/08 职场文书
谢师宴邀请函
2015/02/02 职场文书
HR必备:销售经理聘用合同范本
2019/08/21 职场文书
Golang 获取文件md5校验的方法以及效率对比
2021/05/08 Golang
Python常遇到的错误和异常
2021/11/02 Python
以MySQL5.7为例了解一下执行计划
2022/04/13 MySQL
Python实现仓库管理系统
2022/05/30 Python