博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
今天的学习
阅读量:6622 次
发布时间:2019-06-25

本文共 1717 字,大约阅读时间需要 5 分钟。

hot3.png

if语句是一种基本的控制语句,它让JavaScript程序可以选择执行路径,更准确的说,就是有条件的执行语句。

第一种形式:

if(条件){    执行语句}

在这种形式中,需要计算条件中的值,如果计算结果是真值,那么就执行执行语句。如果条件的值是假值,那么就不执行执行语句。

例如:

if(username == null);                  //如果username是null或者undefinedusername = "Johe Doe";                 //对其进行定义

同样的:

//如果username是null、undefined、false、0、""或者NaN,那么就给它赋一个新值if(!username) username = "Johe Doe";

需要注意的是,if语句中括住条件的圆括号在语法上是必须的

JavaScript语法规定,if关键字和带圆括号的表达式之后必须跟随一条语句,但可以使用语句块将多条语句合并成一条。

if语句的形式如下:

var i = 1;if(i == 1){    alert(111);}

if语句的第二种形式引入了else从句,当条件的值是false的时候执行else中的逻辑。语法如下:

if(条件){    执行语句1}else{    执行语句2}

这段代码中,当条件中的值是真值时执行执行语句1,当条件中的值为假值时执行执行语句2,例如:

if(i == 2){    console.log("You have 1 new message");} else {    console.log("You have " + i + "new message.");}

if语句在程序执行过程中创建一条分支。

当所有分支都依赖于同一个表达式的值时,if并不是最佳解决方案。

switch语句正适合处理这种情况。

关键字switch之后紧跟着圆括号括起来的一个表达式,随后是一对花括号括起来的代码块。示例代码:

switch(条件){    执行语句}

switch语句的完整语法要比这复杂一些。代码块中可以使用多个有case关键字标识的代码片段,case之后是一个表达式和一个冒号,case和标记语句很类似,只是这个标记语句并没有名字,它之和它后面的表达式关联在一起。

当执行这条switch语句的时候,它首先计算条件中的值,然后查找case子句中的表达式是否和条件的值相同(这里的“相同”是按照“===”运算符进行比较的)。

如果找到匹配的case,那么将会执行这个case对应的代码块。

如果找不到匹配的case,那么将会执行"default:"标签中的代码块。

如果没有"default:"标签,switch语句将跳过它的所有代码块。

switch语句实例:

switch(n) {    case 1:       //执行代码 1    break;    case 2:       //执行代码 2    break;    case 3:       //执行代码 3    break;    default:       //执行代码 4    break;}

需要注意的是,在上面的代码中,在每一个case语句块的结尾处都使用了关键字break。

break语句可以使解释器跳出switch语句或循环语句。

在switch语句中,case只是指明了要执行的代码起点,但并没有指明终点。

如果没有break语句,那么switch语句就会从与条件的值相匹配的case标签处的代码块开始执行,依次执行后面的语句,一直到整个switch代码块的结尾。

在大多数情况下,应该使用break语句来终止每个case语句块。

当然,如果在函数中使用switch语句,可以使用retuern来代替break语句,return和break语句都用于终止switch语句,也会防止一个case语句块执行完后继续执行下一个case语句块

转载于:https://my.oschina.net/u/3950339/blog/3048677

你可能感兴趣的文章
less及编译工具介绍
查看>>
干货满满,腾讯云+社区技术沙龙 Kafka Meetup 深圳站圆满结束
查看>>
IP访问控制列表(ACL)
查看>>
MPLS ×××案例
查看>>
Jmeter-发送JDBC请求
查看>>
LVS DR模式搭建 keepalived + LVS
查看>>
dubbo源码分析-负载均衡
查看>>
OCP 052考试新题库收集整理-第20题
查看>>
决心书
查看>>
一统江湖的大前端(3) DOClever——你的postman有点low
查看>>
云栖大会上发布了哪些移动研发新利器?
查看>>
《黑客免杀攻防》读书笔记-软件逆向工程(6) switch-case分支
查看>>
根据自己的应用范围选择合适
查看>>
day6作业--游戏人生完善
查看>>
金字塔思维
查看>>
strak组件(10):批量操作
查看>>
thinkphp空控制器的处理
查看>>
Mahout分步式程序开发 聚类Kmeans(转)
查看>>
修改linux最大文件句柄数
查看>>
接口幂等
查看>>