JavaScript运算符易错点

时间:2021-2-20 作者:admin

总结JS运算符和易错的点

关于运算符,各种语言都大同小异,记录一下JS运算符中特别的地方。

算术运算符

JavaScript 共提供10个算术运算符,用来完成基本的算术运算。

+-* /**% ++--、数值运算符: + 、负数值运算符:-

  • 加法运算符(+)用于字符串时是连接运算符,且字符串只支持+这一个运算符、任何类型数据+字符串时都会把该数据先转化为字符串再连接字符串。

  • 除了加法运算符,其他算术运算符(比如减法、除法和乘法)都只有单功能。它们的规则是:所有运算子一律转为数值,再进行相应的数学运算。

  • 加法运算符(+)用于对象,必须先转成原始类型的值,然后再相加。

  • 指数运算符(**)完成指数运算,运算符前是底数,后面是指数。2^2=2**2=4

  • 尽量少用自增自减(for循环可以),使用a+=1

  • 关于自增自减运算符,变量放在前就返回变量操作前的值,变量在后就返回变量操作后的值 ,下面给出示例

    var x = 1;  var y = 1;
    x++ // 1  
    ++y // 2
    x--//1
    --x//0
    
  • 数值运算符+的作用在于可以将任何值转为数值

    +true // 1
    +[] // 0
    +{} // NaN
    
  • 负数值运算符-功能和数值运算符相同,但是得到的值正负相反。

比较运算符

JavaScript 一共提供了8个比较运算符

>大于、< 小于、<= 小于或等于、>= 大于或等于、== 相等、=== 严格相等、!= 不相等、!== 严格不相等运算符

关于比较运算符,最重要的就是模糊==和严格===的使用

模糊==比较规则

类型相同时,比较两个值是否相等;

类型不相同时,会将它们转换成同一个类型,再用严格相等运算符进行比较。

下面是x==y的真值表:

声明:本文内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎进行举报,并提供相关证据,工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。