数字运算符

411 阅读3分钟

数字运算符

+加,-减,*乘,/除,%取模(求余数),++递增,--递减,+正好,-负号

加性操作符

加法和减法是加法操作符下的两个运算符,与我们日常接触的数学中的加法减法是一样的,当然除此之外,他们也有另外一些比较特殊的地方。

-加法

1.当左右两侧的操作数,任何一侧为字符串,另一侧非字符串的类型则转为字符串,进行字符串的拼接。

2.当左右两侧都为Number类型的情况下,按照如下规则返回结果:
  1.左右两侧均为数值,执行常规的加法计算;
  2.如果有一个操作数是NaN,则结果返回NaN;
  
3.如果操作数是布尔值,undefined,null,则会(根据对应的规则)转为数字类型,然后再进行计算,如果其中转换结果为NaN,则结果就是NaN

-减法

1.当左右两侧都为Number类型的情况下,按照如下规则返回结果:
  1.左右两侧均为数值,执行常规的减法运算;
  2.如果其中一个操作数是NaN,则返回NaN;
  
2.如果操作数是字符串,布尔值,undefined,null,则先会(根据对应的规则)转为数字类型,然后再进行计算,如果其中转换结果为NaN,则结果就是NaN

(减法为什么是加性操作符? 减号运算符作用于两个数字类型时表示减法,产生两个操作数之差。左边操作数是被减数右边是减数。给定操作数a和b,总是有a-b产生与a+(-b)产生相同结果 )

取模运算符

1.如果左右两侧均为Number类型的时候,按照如下规则返回结果:
  1.如果左右两侧均为数值,按照常规的除法进行计算,返回余数;
  2.如果有一侧是NaN,则返回结果NaN;
  3.如果出书为0,则结果返回NaN;
  
2.如果有一侧不是Number类型,则(根据对应的规则)转为数字类型,然后进行计算

一元操作符

只能操作一个值的操作符叫做一元操作符

一元加运算符

1.如果操作数是Number类型的时候,正号放在数值前面,对其完全没有任何影响。

2.如果操作数是String,true,false,null,undefined,则(根据对应规则)转为数字类型。
  

一元减运算符

1.如果操作数是Number类型的时候,负号放在数值前面,表示负数。

2.如果操作数是String,true,false,null,undefined,则(根据对应规则)转为数字类型

递增和递减运算符

前置型
 var  a = 10;
 var  b = 20;
 ++a; //11
 --b; //19
后置型
 var a = 10;
 var b = 20;
 a++; // 11
 b--; //19
前置型,变量的值都是在语句被求值以前发生改变
 var num = 10;
 var num1 = ++num-2; //9
 var num2 = num-2; //9
后置型,变量的值都是在语句被求值以后发生改变
 var num = 10;
 var num1 = num++ -2;//8
 var num2 = num -2;//9
1.当遇到Number类型时,如果是数值,直接进行计算。

2.如果是Stringnullundefinedfalsetrue,则(根据对应规则)转换为数字类型后进行计算。