浅谈JavaScript中的分支结构


Posted in Javascript onJuly 01, 2016

说到JavaScript中的分支结构,我们就不得不提到流程控制这个词,我们所有的程序都是由数据和算法组成的。

程序=数据+算法

通常我们所说的算法都可以通过"顺序","分支","循环"三种结构来组合完成。

浅谈JavaScript中的分支结构

在ECMA中规定了一些语句(也称为流程控制语句,分支结构语句),从本质上来说,这些语句定义了ECMAScript中的主要语法,语句通常使用一个或者多个关键字来完成给定任务。

1.1 if 语句

if 语句 - 只有当指定条件为 true 时,使用该语句来执行代码

if (条件)
  {
  只有当条件为 true 时执行的代码
  }

if...else 语句 - 当条件为 true 时执行代码,当条件为 false 时执行其他代码

if (条件)
 {
 当条件为 true 时执行的代码
 }
else
 {
 当条件不为 true 时执行的代码
 }

if...else if....else 语句 - 使用该语句来选择多个代码块之一来执行

if (条件 1)
{
当条件 1 为 true 时执行的代码
}
else if (条件 2)
{
当条件 2 为 true 时执行的代码
}
else
{
当条件 1 和 条件 2 都不为 true 时执行的代码
}

1.2 switch 语句

使用 switch 语句来选择要执行的多个代码块之一。

switch(n)
{
case 1:
 执行代码块 1
 break;
case 2:
 执行代码块 2
 break;
default:
 n 与 case 1 和 case 2 不同时执行的代码
}

工作原理:首先设置表达式 n(通常是一个变量)。随后表达式的值会与结构中的每个 case 的值做比较。如果存在匹配,则与该 case 关联的代码块会被执行。请使用 break 来阻止代码自动地向下一个 case 运行。

default 关键词

请使用 default 关键词来规定匹配不存在时做的事情:

var day=new Date().getDay();
switch (day)
{
case 6:
 x="Today it's Saturday";
 break;
case 0:
 x="Today it's Sunday";
 break;
default:
 x="Looking forward to the Weekend";
}

解释:今天不是周六或者周日才会执行的代码段。

1.3 if 与 switch 的比较

switch case vs else if
   switch case 仅用于等于比较的条件
   else if 可用任意条件
   
   if(Boolean(条件)) else if()
    自带隐式转换,将条件转为boolean
    效率稍微低
   switch case 
    不带隐式转换的等于比较,效率稍微高

以上这篇浅谈JavaScript中的分支结构就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
jQuery Ajax之load()方法
Oct 12 Javascript
分享几个超级震憾的图片特效
Jan 08 Javascript
JQuery入门——用one()方法绑定事件处理函数(仅触发一次)
Feb 05 Javascript
jQuery bxCarousel实现图片滚动切换效果示例代码
May 15 Javascript
RequireJS使用注意细节
May 15 Javascript
AngularJS定时器的使用与移除操作方法【interval与timeout】
Dec 14 Javascript
React Native react-navigation 导航使用详解
Dec 01 Javascript
关于vue中的ajax请求和axios包问题
Apr 19 Javascript
JS前端广告拦截实现原理解析
Feb 17 Javascript
Vue axios与Go Frame后端框架的Options请求跨域问题详解
Mar 03 Javascript
微信小程序轮播图swiper代码详解
Dec 01 Javascript
深入理解Vue的数据响应式
May 15 Vue.js
Bootstrap下拉菜单效果实例代码分享
Jun 30 #Javascript
Bootstrap图片轮播组件使用实例解析
Jun 30 #Javascript
Bootstrap编写一个在当前网页弹出可关闭的对话框 非弹窗
Jun 30 #Javascript
Bootstrap编写一个同时适用于PC、平板、手机的登陆页面
Jun 30 #Javascript
jQuery获取table行数并输出单元格内容的实现方法
Jun 30 #Javascript
JS实现添加,替换,删除节点元素的方法
Jun 30 #Javascript
JS传值出现中文参数乱码的解决方法
Jun 30 #Javascript
You might like
php上传、管理照片示例
2006/10/09 PHP
php+javascript的日历控件
2009/11/19 PHP
php网站被挂木马后的修复方法总结
2014/11/06 PHP
Laravel 5.5 实现禁用用户注册示例
2019/10/24 PHP
超级强大的表单验证
2006/06/26 Javascript
让回调函数 showResponse 也带上参数的代码
2007/08/13 Javascript
javascript this用法小结
2008/12/19 Javascript
JQuery.ajax传递中文参数的解决方法 推荐
2011/03/28 Javascript
nodejs分页类代码分享
2014/06/17 NodeJs
浅谈jQuery before和insertBefore的区别
2016/12/04 Javascript
JS获取鼠标位置距浏览器窗口距离的方法示例
2017/04/11 Javascript
AngularJS中使用ngModal模态框实例
2017/05/27 Javascript
原生JS封装animate运动框架的实例
2017/10/12 Javascript
微信小程序日期选择器实例代码
2018/07/18 Javascript
JavaScript捕捉事件和阻止冒泡事件实例分析
2018/08/03 Javascript
vue组件内部引入外部js文件的方法
2020/01/18 Javascript
[06:48]DOTA2-DPC中国联赛2月26日Recap集锦
2021/03/11 DOTA
python比较2个xml内容的方法
2015/05/11 Python
Python3 操作符重载方法示例
2017/11/23 Python
Python之ReportLab绘制条形码和二维码的实例
2018/01/15 Python
python实现批量修改服务器密码的方法
2019/08/13 Python
Python中list循环遍历删除数据的正确方法
2019/09/02 Python
使用Python实现 学生学籍管理系统
2019/11/26 Python
python 导入数据及作图的实现
2019/12/03 Python
python将dict中的unicode打印成中文实例
2020/05/11 Python
Python 通过爬虫实现GitHub网页的模拟登录的示例代码
2020/08/17 Python
详解HTML5将footer置于页面最底部的方法(CSS+JS)
2018/10/11 HTML / CSS
美国婚礼和派对礼品网站:Kate Aspen(新娘送礼会、迎婴派对)
2018/03/28 全球购物
extern是什么意思
2016/03/10 面试题
优秀共产党员先进事迹材料
2014/05/06 职场文书
职务任命书范本
2014/06/05 职场文书
校运会宣传稿大全
2015/07/23 职场文书
导游词之苏州盘门景区
2019/11/12 职场文书
MySQL七种JOIN类型小结
2021/10/24 MySQL
SQL 聚合、分组和排序
2021/11/11 MySQL
SQL Server Agent 服务无法启动
2022/04/20 SQL Server