注意事项
-
多分支if语句中可以有多个else if的分支,但是else分支只能有一个,必须在最后,作为备用的选项,而且else也可以省略不谢,表示前面条件如果都不满足,直接跳出不走任何分支
-
多分支if语句有跳楼现象:条件从上往下依次验证,如果满足了某个条件,会立即执行后面的结构体,执行完之后,不会再往后验证其他的条件了,而是从这一层直接跳楼跳出if语句,这就是跳楼现象
================================================================
-
if语句的结构体部分,代码可以是任意的代码,甚至是另外一组if语句。
-
也就是if语句内部嵌套了if语句
-
如果想执行内部if语句的某个分支,必须满足外部if语句的条件,同时还要满足内部if语句的某个条件
-
优化:可以简化多分支if语句
===============================================================
-
又叫三元运算符,必须有三个操作数参与的运算
-
操作符号:?:
-
表达式:在参与js程序是,都必须先计算出表达式结果,才能参与后续程序
-
由于三元表达式具备了一些选择的效果,所以也是一种条件分支语句
三元表达式语法
-
boolean_expression?true_value:false_value;
-
boolean_expression:布尔表达式,表达式在参与三元运算符中必须求得一个布尔类型的值,要么是true要么是false,结果作为判断依据
-
作用:根据布尔表达式的结果,如果为真,三元表达式结果就是真值,如果为假,三元表达式结果就是假值
三元表达式优点
-
二选一的情况下,三元表达式结构更加简单
-
三元表达式作为一个表达式参与程序时,必须先运算出结果才能参与,可以利用这个特点,将二选一结果赋值给一个变量
-
遇到一个变量根据条件二选一赋值的情况,可以使用三元表达式
==================================================================
- 开关语句允许一个程序求一个表达式的值,并且尝试去匹配表达式的值到一个case标签。如果匹配成功,这个程序执行相关的语句。
switch (表达式) {
case 值1:
结构体1;
break;
case 值2:
结构体2;
break;
…
default:
结构体n;
break;
}
语句结构解析
-
switch
-
关键字表示开始进入一个开关语句
-
表达式
-
回球出一个具体的值,将这个值去与{}内部的case后面的值进行对比、匹配,如果值相等表示匹配成功。匹配相等时,方式是进行全等于匹配,不治之要相等,数据类型也要相等
-
case
-
示例的意思,作为关键字后面必须跟一个空格,书写匹配的值
-
case后面的结构体
-
每个case匹配成功之后要执行的语句
-
break
-
用于打断结构体,直接跳出程序,模拟跳楼现象
-
default
-
相当于if语句中的else,否则的情况,如果前面的case都不匹配,执行default后面的语句
语句运行机制
-
switch语句首先会将小括号内的表达式计算出一个结果,用结果去匹配结构体内部的case;
-
从上往下进行匹配,如果匹配成功,会立即执行这个case后面的语句,直到遇到一个break跳出整个switch语句;
-
如果前面的case没有匹配成功,会跳过case之间的语句,去匹配下一个case,直到匹配成功,如果都不成功就执行default后面的语句
=======================================================================
-
default可以不写,相当于if语句没有else
-
break关键字:根据结构需要有时必须在每个case后面都要写,为了模拟跳楼现象,如果不写break,对应的case后面的语句执行之后,不会跳出结构体,会继续向下执行其他case的后面的语句,直到遇到一个break
可以利用break不写的情况制作一些特殊的案例
==================================================================
-
for循环是一种前测试循环语句,在反复执行一段代码之前,都要先测试入口条件,如果条件为真,可以继续循环,如果条件为假,必须跳出循环不再执行
-
for循环是一种反复执行一段代码直到测试条件为假时停止
for (;😉 {
}
// 呆板的语法:
for (定义循环变量;变量的最大值或最小值;步长) {
循环体;
}
// 这种解释只能涵盖for循环的一部分特殊结构,不能表示所有的for循环实现的情况
=====================================================================
-
小括号内部必须有两个分号
-
for循环{}后面不需要加分号
-
如果没有设置入口条件,或者条件永远为真,没法限制什么时候停止循环的话会出现死循环
-
循环的结构体,是可以人为自定义的,甚至可以书写if语句
-
for循环嵌套if语句:表示既要能够执行循环,还要满足if语句的条件
-
for循环嵌套for循环:外层循环执行一次,内层循环作为外层循环的结构体,必须执行完所有的内层循环,才能进入外层循环下一次
-
循环内的变量是全局变量,必须避免循环嵌套起相同的变量名,内层和外层变量必须不同,常用的变量名i、j、k
====================================================================
- do while循环是一种后测试循环语句,回西安只行一次结构体,执行完后才会去判断入口条件,如果条件为真能够继续下一次循环,如果条件为假跳出循环
do {
结构体;
} while(条件表达式)
-
do:做什么。后面是每次循环的循环体
-
while:当。。。时候
-
先执行一次循环体,然后当条件表达式为真时可以继续循环
注意事项
-
如果循环中需要循环变量参与,循环变量必须定义在循环外面,否则会被重置
-
循环变量自加的过程需要写在{}循环体内部
-
如果将循环变量写在结构体内,i的初始值每次都会被重置,容易出现死循环
-
变量自加过程写在输出语句前面和后面,结果是不同的
-
do while 循环即便条件第一次测试就为假,也会执行一次结构体
-
至少会执行一次循环体
=================================================================
- while循环是一种前测试循环语句,在执行循环体之前都要测试入口条件,条件为真继续执行,条件为假直接跳出循环
whiel (条件表达式) {
循环体;
}
注意事项
-
如果需要循环变量参与,必须定义在循环外部,避免被重置
-
循环变量自加的过程写在循环体内部
总结
- 遇到必须先执行一次结构体的循环,使用do while循环
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数前端工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年Web前端开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上前端开发知识点,真正体系化!
由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新
如果你觉得这些内容对你有帮助,可以添加V:vip1024c 备注前端获取(资料价值较高,非无偿)
基础学习:
前端最基础的就是 HTML , CSS 和 JavaScript 。
网页设计:HTML和CSS基础知识的学习
HTML是网页内容的载体。内容就是网页制作者放在页面上想要让用户浏览的信息,可以包含文字、图片、视频等。
开源分享:【大厂前端面试题解析+核心总结学习笔记+真实项目实战+最新讲解视频】
CSS样式是表现。就像网页的外衣。比如,标题字体、颜色变化,或为标题加入背景图片、边框等。所有这些用来改变内容外观的东西称之为表现。
动态交互:JavaScript基础的学习
JavaScript是用来实现网页上的特效效果。如:鼠标滑过弹出下拉菜单。或鼠标滑过表格的背景颜色改变。还有焦点新闻(新闻图片)的轮换。可以这么理解,有动画的,有交互的一般都是用JavaScript来实现的。
片、视频等。
开源分享:【大厂前端面试题解析+核心总结学习笔记+真实项目实战+最新讲解视频】
[外链图片转存中…(img-jfWFWWDI-1711567234723)]
CSS样式是表现。就像网页的外衣。比如,标题字体、颜色变化,或为标题加入背景图片、边框等。所有这些用来改变内容外观的东西称之为表现。
[外链图片转存中…(img-SXlaRhuf-1711567234724)]
动态交互:JavaScript基础的学习
JavaScript是用来实现网页上的特效效果。如:鼠标滑过弹出下拉菜单。或鼠标滑过表格的背景颜色改变。还有焦点新闻(新闻图片)的轮换。可以这么理解,有动画的,有交互的一般都是用JavaScript来实现的。