JavaScript学习基础笔记02
javascript学习笔记——JS运算符
一、JS运算符
运算符:(operator)也被称为操作符,是用于实现赋值、比较和执行算数运算等功能的符号。
- JavaScript中常用的运算符:
- 算数运算符
- 递增和递减运算符
- 比较运算符
- 逻辑运算符
- 赋值运算符
- JavaScript中常用的运算符:
算数运算符(
+
,-
,*
,/
,%
)- 直接用浮点数进行算数运算可能会出现问题,
浮点数的精度问题
,浮点数值的最高精度为17个小数,但在进行算数运算时其精确度远远不如小数。1
console.log(3.4+1.2); //得到的结果是 0.30000000000000004
- 表达式与返回值
- 表达式:是由数字,运算符,变量等以能求得数值的有意义排列方法所得的组合。(由数字,运算符,变量组成的式子)。
- 返回值:表达式最终都有一个结果返回给我们,我们称为返回值。
- 直接用浮点数进行算数运算可能会出现问题,
递增和递减运算符
- 递增(++)
- 放在变量前面时为前置递增运算符(++age类似于 age=age+1)
先自加1,后返回值
- 放在变量后面时称为后置递增运算符
先返回原值,后自加1
- 放在变量前面时为前置递增运算符(++age类似于 age=age+1)
- 递减(–)
- 放在变量前面时为前置递减运算符
先自减1,后返回值
- 放在变量后面时称为后置递减运算符
先返回原值,后自减1
- 放在变量前面时为前置递减运算符
- 递增(++)
比较运算符
- 比较运算符:是两个运算符进行比较时所使用的运算符,比较运算后会返回一个布尔值(true/false)作为比较运算的结果。
运算符名称 说明 案例 结果 < 小于号 1<2 true > 大于号 1>2 false >= 大于等于号 2>=2 true <= 小于等于号 3<=2 false == 判等号 12==12 true != 不等号 12!=12 false === !== 全等,要求值和数据类型都一致 12===’12’ false
- 比较运算符:是两个运算符进行比较时所使用的运算符,比较运算后会返回一个布尔值(true/false)作为比较运算的结果。
逻辑运算符
- 与(&&)
- 或(||)
- 非( ! )
- 短路运算(逻辑中断):当多个表达式(值)时,左边的表达式值可以确定结果时,就不再继续运算右边的表达式的值。
赋值运算符
=
,+=
,-=
,*=
,/=
,%=
运算符优先级
优先级 运算符 顺序 1 小括号 () 2 一元运算符 ++ – ! 3 算数运算符 先* / % 后 + - 4 关系运算符 > >= < <= 5 相等运算符 == != === !== 6 逻辑运算符 先&&后或 7 赋值运算符 = 8 逗号运算符 ,
二、JavaScript流程控制——分支
流程控制:就是来控制我们的代码按照什么结构顺序来执行
流程控制的3种结构:顺序结构,分支结构和循环结构
顺序流程控制
- 顺序结构是程序中最简单、最基本的流程控制,它没有特定的语法结构,程序会按照
代码的先后顺序
,依次执行,程序中大多数的代码都是这样执行的。
- 顺序结构是程序中最简单、最基本的流程控制,它没有特定的语法结构,程序会按照
分支流程控制
由上到下执行代码的过程中,根据
不同的条件
,执行不同的路径代码(执行代码多选一的过程),从而得到不同的结果。JS语言提供了两种分支语句:if语句,switch语句
if语句:
1
2
3
4
5if(){
}else{
}三元表达式
:- 语法结构:条件表达式?表达式1 : 表达式2
- 如果条件为真,则返回 表达式1 的值 ,若条件为假则 返回 表达式2的值
1
2var num=10;
var result=num>5 ? '是的' : '不是的'; //结果为 '是的'
switch语句:
- break 若前面的case没有添加break, 则不会退出,继续执行下一个case,不论值是否相等。
- 表达式的值和value的值是全等关系,数据类型相等,数值相等。
- 代码示例:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21switch(表达式){
case value1:
执行语句1; break;
case value2:
执行语句2; break;
......
default:
执行最后的语句;
}
var grade=prompt("请输入你的成绩");
switch(grade%10){
case 9:
console.log("优秀"); break;
case 8:
console.log("良好"); break;
case 7:
console.log("合格"); break;
default:
console.log("不合格");
}
switch语句与if else if语句的区别:
- 一般情况下两个语句可以相互替换
- switch…case语句通常处理case为比较固定的值的情况,而if…else 语句更加灵活,常用于范围判断。
- switch语句进行条件判断后直接执行到程序的条件语句,效率更高。 而if …else 语句有几种条件,就得判断多少次。
- 当分支较少时,if…else语句的执行效率比switch语句高。
- 当分支较多时,switch语句的执行效率比较高,而且结构更清晰。
三、JavaScript流程控制——循环
- 循环的
目的
:在实际问题中,有许多具有规律
的重复操作,因此在程序中要完成这项操作就需要重复执行某些语句。 - for循环
- 在程序中,一组被重复执行的语句被称之为
循环体
,能否继续重复执行
,取决于循环的终止条件
。由循环体及循环的终止条件组成的语句,被称之为循环语句
。 - for循环主要用于把某些代码循环若干次。
1
2
3for(初始条件; 条件表达式; 操作表达式){
//循环体
}
- 在程序中,一组被重复执行的语句被称之为
- 循环嵌套(双重for循环)
- while循环
- while语句可以在条件表达式为真的前提下,循环执行指定的一段代码,直到表达式不为真时结束循环。
- while循环语法结构
1
2
3
4while(条件表达式)
{
//循环体
}
- do while循环
- do…while循环语句其实是while循环语句的一个变体,该循环会
先执行一次代码块
,然后对条件表达式进行判断,如果为真就会重复执行循环体,否则就会退出循环。 - do… while循环语法结构
1
2
3dd{
//循环体
}while(条件表达式);
- do…while循环语句其实是while循环语句的一个变体,该循环会
- continue break
- continue关键字用于立即跳出本次循环,继续下一次循环(本次循环体中continue之后的代码就会少执行一次)。
- 代码示例
1
2
3
4
5
6
7
8
9for(var i=1;i<=5;i++)
{
if(i==3){continue;}
console.log('循环下执行'+i);
}
// 循环下执行1
//循环下执行2
// 循环下执行4
// 循环下执行5 - beak关键字
- break关键字用于立即跳出循环(循环结束)
- 示例代码
1
2
3
4
5
6
7for(var i=1;i<=5;i++)
{
if(i==3){break;}
console.log('循环下执行'+i);
}
// 循环下执行1
//循环下执行2
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 Another Dimension!
评论
ValineDisqus