运算符和数组
# 运算符
运算符也被称为操作符,是用于实现赋值、比较和执行算术运算等功能的符号
- 算术运算符
- 递增递减运算符
- 比较运算符
- 逻辑运算符
- 赋值运算符
# 算术运算符
运算符 | 描述 |
---|---|
+ | 加 |
- | 减 |
* | 乘 |
/ | 除 |
% | 取余 |
注意点
- 浮点数有精度问题 算术运算有精度问题
- 不能直接用浮点数来相比较
# 递增递减运算符
- 前置递增减
- 后置递增减
和后端语言一样使用 ,前置先递增后使用,后置先使用后递增
# 比较运算符
运算符 | 说明 |
---|---|
< | 大于 |
> | 小于 |
>= | 大于等于 |
<= | 小于等于 |
== | 会转型等于 |
!= | 不等于 |
=== and !== | 全等 要求值和数据类型都一致 |
Note: 您可能会看到有些人在他们的代码中使用
==
和!=
来判断相等和不相等,这些都是JavaScript中的有效运算符,但它们与===
/!==
不同,前者测试值是否相同, 但是数据类型可能不同,而后者的严格版本测试值和数据类型是否相同。 严格的版本往往导致更少的错误,所以我们建议您使用这些严格的版本。
# 逻辑运算符
逻辑运算符 | 说明 |
---|---|
&& | and |
|| | or |
! | not |
# 逻辑与
表达式1 && 表达式2
- 如果表达式1为假,返回表达式1
- 如果表达式1为真,则返回表达式2
非 boolean值
# 逻辑或
表达式1 || 表达式2
# 赋值运算符
运算符 | 说明 | 案例 |
---|---|---|
= | ||
+=、-= | ||
*=、/=、%= |
# 运算符优先级
优先级 | 运算符 | 顺序 |
---|---|---|
1 | 小括号 | () |
2 | 一元运算符 | ++ -- ! |
3 | 算术运算符 | * / % + - |
4 | 关系运算符 | > >= < <= |
5 | 相等运算符 | == != === !== |
6 | 逻辑运算符 | && || |
7 | 赋值运算符 | = |
8 | 逗号运算符 | , |
- 逻辑非优先级在一元运算符中很高
# 表达式
由数字、运算符、变量等组成的式子
# 三元表达式
条件表达式1?表达式2:表达式3
num>0?num:1
# 流程控制
- 顺序结构
- 分支结构
- 循环结构
# 顺序结构
顺序结构是程序中最简单、最基本的流程控制,它没有特定的语法结构,程序会按照代码的先后顺序,依次执行,程序中大多数的代码都是这样执行的
# 分支结构
由上到下执行代码的过程中,根据不同的条件,执行不同的路径代码,从而得到不同的结果
if(条件表达式){
...
} else {
}
1
2
3
4
5
2
3
4
5
多重判断分支
if (){
...
} else if(){
...
} else {
...
}
1
2
3
4
5
6
7
2
3
4
5
6
7
switch语句
switch(表达式){
case value1:
执行语句1;
break;
case value2:
执行语句2;
break;
case value3:
执行语句3;
break;
default:
默认执行语句;
}
1
2
3
4
5
6
7
8
9
10
11
12
13
2
3
4
5
6
7
8
9
10
11
12
13
注意点
- 表达式与case值 相匹配是全等的 === , 必须值和数据类型一致
- 表达式通常是变量
# 循环结构
在程序中,一组被重复执行的语句被称之为循环体,能否继续重复执行,取决于终止条件。由循环体及循环的终止条件组成的语句,被称之为循环语句
for(初始化条件;条件表达式;操作表达式){...}
双重for循环
for(){
for(){
}
}
1
2
3
4
5
2
3
4
5
while循环
while(条件表达式){
...
}
1
2
3
2
3
do while循环
do {
...
}while(条件表达式)
1
2
3
2
3
# 关键字
- continue
- break
# 命名规范
- 变量、函数的命名必须要有意义
- 变量的名称一般用名词
- 函数的名词一般用动词
# 数组
数组是指一组数据的集合,其中每个数据被称为元素,在数组中可以存放任意类型的元素。
# 创建数组
- 利用 new 关键字
var arr = new Array();
1
利用数组字面量创建数组 []
var arr = [];
1
# 访问数组元素
数组名[索引号]
# 数组的长度
arr.length
# 数组扩容
数组名[数组名.length+!]= value;
如果有值就是替换 ,没有值是扩容
编辑 (opens new window)
上次更新: 2023/02/07, 14:51:48