JavaScript运算符详解

举报
运气男孩 发表于 2021/07/11 23:42:34 2021/07/11
【摘要】 运算符1、 运算运算符(operator)也被称为操作符,是用于实现赋值,比较和执行算数运算等功能的符号。js中常用的运算符号:算数运算符递增和递减运算符比较运算符逻辑运算符赋值运算符算数运算符号:+ - *(乘号) /(除号) %(取余)1.1 浮点数浮点数的最高精度是17位小数,但在进行算术计算时其精确度远远不如整数。var result = 0.1 + 0.2;//结果不是0.3,而是...

运算符

1、 运算

运算符(operator)也被称为操作符,是用于实现赋值,比较和执行算数运算等功能的符号。

js中常用的运算符号:

  • 算数运算符

  • 递增和递减运算符

  • 比较运算符

  • 逻辑运算符

  • 赋值运算符

算数运算符号:+ - *(乘号) /(除号) %(取余)

1.1 浮点数

浮点数的最高精度是17位小数,但在进行算术计算时其精确度远远不如整数。

var result = 0.1 + 0.2;

//结果不是0.3,

而是0.30000000000000004

console.log(0.97 * 100);

//结果不是7, 而是:7.00000000000000001

不要直接判断二个浮点数是否相等

2、 表达式和返回值

表达式:表达式可以由数字、运算符、变量等组成

表达式的结果成为返回值

程序右边的表达式计算完毕的返回值给左边

3、 递增递减运算符

如果需要反复给数字变量添加或减去1 , 可以使用递增( ++ )和递减(-- )运算符来完成。

在JavaScript中,递增( ++ )和递减( -- )既可以放在变量前面,也可以放在变量后面。放在变量前面时,

我们可以称为前置递增(递减)运算符,放在变后面时,我们可以称为后置递增(递减)运算符。

注意:递增和递减运算符必须和变配合使用

3.1 前置递增

++num 前置递增,就是自+1


var age = 10;

++age; // 类是于 age = age +1 结果为11

使用口诀:先自加,后返回值

3.2 后置递增

num++ 后置递增,就是自+1

使用口诀:先返回原值,后自加1


var age = 10;

console.log(age++ + 10); // 结果为20

age在加1等于11



var a = 10;

console.log(a++ - --a);  //a++=11 --a=11-1=10    //结果为10-10=0



var a = 10;

console.log(10 - --a);   //a = 9 

console.log(10 - --a);   //  a = 9-1  //结果为2



var a = 10; 

console.log(10 - a--);  // a-- 先返回原值等于10 结果为0  

console.log(10 - a--); // a--后运算等于10-1=9   10-9=1 结果为1

总结:

  • 前后递增写法简化代码

  • 前后自增如果单独使用,效果一样

  • 与其他代码联用,执行结果不同

  • 前自增先自加,后运算

  • 后自增先表达式返回原值,后面变量在自加1

4、比较运算符

比较运算符(关系运算符)是两个数据进行比较时使用的运算符,比较运算后,会返回一个布尔值(true/false),作为比较运算结果
11.jpg


  var num1 = 10;

        var num2 = 100;

        var res1 = num1 > num2;   //false

        var res2 = num1 == num2;  //false

        var res3 = num1 != num2; //true

        console.log(res1);

        console.log(res2);

        console.log(res3);

5、逻辑运算符

概念:逻辑运算符是用来进行布尔值运算的运算符,返回值也是布尔值。后面开发中经常用于多个条件的判断
13.jpg

5.1 逻辑与&&

二侧都是true才为true,否者为false.

5.2 逻辑或||

二边都为false才为false,否者为true

5.3 逻辑非!

逻辑非(!)也叫取反符,用来取一个布尔值相反的值,如true的相反为false.

5.4 短路运算(逻辑中断)

短路运算的原理:当有多个表达式(值)时,左边的表达式可以确定结果时,就不在继续运算右边的表达式

a.逻辑与

  • 语法:表达式1 && 表达式2

  • 如果表达式1为真,结果为真,则返回表达式2

  • 如果第一个表达式值为假,则返回表达式1


console.log(123 && 456 && 789);  //789

console.log(0 && 123 && 456);  //0

//0

b. 逻辑或

  • 语法:表达式1 || 表达式2

  • 如果第一个表达式为真,则返回表达式1

  • 如果第一个表达式为假,则返回表达式2

5.5 赋值运算符

20.jpg

【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。