三目运算符
表达式? 表达式1: 表达式2
如果表达式转换为布尔值以后是ture,则执行表达式1,否则的话执行表达式2
这个运算符也会返回值,会将表达式1或者表达式2的结果返回
返回的是布尔值就不要使用三元表达式了
条件语句
if()
{}内的语句块意味可以写多条语句,当满足条件时,就会执行这些语句,如果不满足就不会执行这些语句了
得数为一
主义js语句语言虽然不会强制每句后面加分号,但是我们需要清楚哪里需要加,哪里不需要加
当在条件语句后面加分号,意味着这个语句将不会有语句块的内容
如果表达式的结果转换为布尔值后,是ture,则执行语句1,否则执行语句2
这个条件是2选1的执行方式
if(表达式)
上面图中两个条件是有区别的,第一个是2选1,第二个是满足条件打印aaa,不管是否满足
都会打印bbb
多分支结构
多分支条件用于条件选项非常多,可以根据不同的条件执行不同的语句块
如果满足表达式1则执行语句块1,否则如果满足表达式2执行语句块2.。。。
这个条件语句是从上到下,如果其中有一个条件满足了,就不会判断后面的条件直接条件语句
只判断一个,等于2
一定要区分下面两种条件
1.第一个条件语句当满足其中一个不需要继续判断,跳出条件语句
2、 第二个条件语句满足第一个以后还需要继续向后判断
3、第一个条件语句具有区间性,条件比第二个更简单
当需要多次判断时,不能使用if else if,需要写多个if语句
Switch case
switch中的表达式和if条件语句的中的表达式不同
if条件语句的表达式,结果会自动转换为布尔值,根据布尔值绝对是否执行语句块
而switch中的表达式不会自动转换为布尔值,而是判断与Switch语句中每个case的值是否绝对相等,如果与case绝对相等,则执行对应的语句块,遇到break则跳出当前的Switch,如果没有遇到breK,则不需要判断表示式是否与下一个值相等,直接执行下一个语句块的内容,我们把这种情况叫做穿越,如果表达式与任何一个case的值都不相同,则执行执行default后 面的语句块,default后面的语句块不需要break执行完成后直接跳出switch
2.无break的穿越
在这里没有break,因此,不会判断a是否等于3,直接进入下一个case的语句块执行
3.Switch一般是判断绝对等于某个值,无法进行条件范围判断
当表达设置为true,将条件放在值的位置,这就意味着这个条件等于true时,执行对应的语句块
while循环
在开发时,需要多次执行同样的代码,这时候就需要使用循环了
根据id获取html中与这个id相同的标签对象(DOM对象)
document . getElementById("id")上面
就是获取上面的id是div1的div元素,并且把这个元素存储在变量div1中
document文档
get获取Element元素ById根据id
从文档中根据id获取元素
任何DOM对象都有一些属性
1.innerText在什么里面 Text文本 HTML HTML标签
innerText
innerHTML
如果循环的表达式转换为布尔值是true则重新运行这个语句块,如果转换布尔值的结果是false,则跳出while语句
每次执行完语句块都会重新判断表达式的值是否是true,如果是t rue则会重新执行语句块
while (表达式) {
语句块
}
因为i在初始的时候是0,判断条件满足后,将会继续循环,i一直都是0,因此一直满足条件,就会无限次循环下去
这种循环叫做死循环
初始值为0,小于目标值,就是目标次数
初始值为1,小于等于目标值,就是目标次数
循环是一个同步的,也就是说循环如果没有完成,不会执行循环后面的内容
live server 当保存文件时会自动刷新
在循环没有写完之前不要保存,否则网页会自动刷新造成死循环卡死
在循环语句中有以下两个关键词,都需要在循环语句中使用条件语句,根据是否满足而确定是否继续或者跳出循环
continue 继续 继续的目的路过本次循环,继续下次循环
break 跳出
break需要在一个范围中循环,并且指定条件的值,使用break
使用while表示没有范围继续向上循环,直到找到这个结果为止
嵌套循环
一百以内素数
一行十列表格
九九乘法表两种方法上下两张图都是
continue 继续 跳过某次循环的过程
while循环中有时候把i++写在底部
看有时候i++写在最上面,当写在最上面的是i的初始值就要比原来的要小一个,条件也要少一个
单独的break不能跳出最外层,只能跳出本层循环
求素数
逗号如果在条件语句或者在循环条件中,最后一个逗号之后的内容才是判断的条件
作业
打印一到一百之间的菲波那切数列之和
指定两个数,求出这个数的最小公倍数和最大公约数