携手创作,共同成长!这是我参与「掘金日新计划 · 8 月更文挑战」的第10天,点击查看活动详情
一、运算符
1.1 算数运算符
+ - * / %
1.2 赋值运算符
= += -= *= /= %=
1.3 一元运算符(正负号)
自增和自减运算符前置或者后置的差异
- 前置自增:先自加再使用
- 后置自增:先使用再自加
1.4 比较运算符
== 左右两边是否相等
=== 左右两边是否类型和值全部相等
!== 左右两边是否不全等
注意事项:
NaN不等于任何值,包括它本身- 尽量不要比较小数,因为小鼠有精度问题
- 不同类型之间比较会发生隐式转化
- 开发时,请使用
===
1.5 逻辑运算符
&& 逻辑与
|| 逻辑或
~ 逻辑非
==逻辑运算符中的短路==
只存在于&&和||,当满足一定条件情况下让右边的代码不执行
1.6 运算符优先级
二、语句
2.1 表达式和语句
2.1.1 表达式
表达式是一组代码的集合,JavaScript解释器会将其计算出一个结果
2.1.2 语句
js整句或命令,js语句是以分号结束(可以省略)
2.2 分支语句
- if分支语句
- 三元运算符
条件 ? 满足条件执行的代码 : 不满足条件执行的代码
- switch 语句
switch(数据){
case 值1:
代码1
break
case 值2:
代码2
break
default:
代码n
break
}
注意事项:
switch case语句一般用于等值判断,不适合与区间判断 2.switch case一般需要配合break关键字使用 没有break会造成case穿透
2.3 循环结构
while (循环条件){
要重复执行的代码(循环体)
}
三、循环-for
3.1 循环的基本使用
for (声明记录循环次数的变量 ;循环条件 ;变化值 ){
循环体
}
for循环和while循环有什么区别:
- 当如果明确了循环的次数的时候推荐使用 for 循环
- 当不明确循环的次数的时候推荐使用while循环
3.2 退出循环
continue break
3.3 循环嵌套
四、数组
4.1 数组是什么
4.2 数组的基本使用
4.3 操作数组
- 查询数组
- 重新赋值
- 数组添加新的数据
arr.push()arr.unshift() - 删除数组中数据
arr.pop()arr.shift()arr.splice(操作的下标,删除的个数)
五、函数
为什么需要函数?
可以实现代码的复用,提高开发效率
5.1 函数使用
function 函数名(){
函数体
}
| 动词 | 含义 |
|---|---|
| can | 判断是否可执行某个动作 |
| has | 盘算是否含义某个值 |
| is | 盘算是否为某个值 |
| get | 判断是否为某个值 |
| set | 获取某个值 |
| load | 加载某些数据 |
5.2 函数传参
形参:==声明函数==时写在函数名右边小括号里的叫形参 实参:==调用函数==时写在函数名右边小括号里的叫实参
5.3 函数返回值(return)
5.4 作用域
- 全局作用域
- 局部作用域
- 块级作用域 特殊情况:局部变量或者块级变量 没有let生命直接赋值的当全局变量看 ==变量访问原则==:采取就近原则的方式来查找变量最终的值
5.5匿名函数
定义:将匿名函数赋值给一个变量,并且通过变量名称进行调用 我们将这个成为函数表达式
let fn = function ( ) {
// 函数体
}
5.6立即执行函数
作用:防止变量污染