day02 语句、隐式转换

102 阅读2分钟

day02 语句、隐式转换

一、流程的控制语句

1.顺序结构:从上到下 2.分支结构:选择条件判断,部分代码执行 3.循环结构:通过代码判断,选择要不要执行某块代码 二、如何使用:

1.if分支:3种写法

1.一个条件,一件事,满足就做,不满足就不做 if(条件){ 操作: } 2.一个条件,两件事,满足就做第一件,不满足就做第二件 if(条件){ 操作: }else{ 默认操作: } 3.多个条件,多件事,满足谁就做谁 if(条件){ 操作1: }else if(条件2){ 操作2: }else{ 默认操作: } 注意: 1.分支只要满足一条路,就不会再走别的路; 2.else if这句话想写多少由项目决定; 3.else这句话可以省略,但不推荐,因为省略后,条件都不满足,则什么都不执行 4.分支可以嵌套

2.switch...case分支:

switch(变量/表达式){ case 1: 操作1: break; case 2: 操作2: break; case 3: 操作3: break; default: 默认操作; } 注意: 1.case比较时候不带隐式转换; 2.记住每一个case完成后都要添加break; 3.default这句话可以省略,但不推荐,因为省略后,条件都不满足,则什么都不执行;

比较if 和 switch

1.switch 优点:执行效率高,速度快(case做的是等值比较) 缺点:必须要直到最后的结果是什么才可以使用switch去判断 2.if 优点:可以做范围判断 缺点:执行效率慢,速度慢 3.三目运算:纯粹是为了简化,简单的分支结构 注意: 1.默认操作不能省略; 2.如果操作比较复杂,不能使用三目运算,(操作只有一句话)

二:强制(显示)数据类型转换

** 1.转字符串:**

1.var str = x.toString();x不能是undefined和null,会报错。因为undefined和null不能做任何操作 2.var str = String(x);万能的,任何东西都可以转换字符串,等于隐式转换,其实String()就是隐式转换的底层逻辑,还不如+'';

** 2.转数字:**

1.parseint(str/num)-用于将字符串转为整数:从左往右依次读取每个字符,遇到非数字字符就停止转换,如果一来就不认识为NaN 2.parseFloat(str)-用于字符串转为小数:用于将字符串转为整数:从左往右依次读取每个字符,遇到非数字字符就停止转换,如果一来就不认识为NaN,认识第一个小数点 3.var num = Number(x):万能的,任何东西都可以转换数字,等于隐式转换,其实Number()就是隐式转换的底层逻辑,还不如-0、1、/1; ** 3.转布尔:* Boolean(x);万能的,任何东西都可以转布尔,等于隐式转换,其实Boolean()就是隐式转换的底层逻辑,还不如!!X; 只有六个值是false,其余都为true 0、’‘、nudefined、null、fasle、NaN