1.在javascript中,所有数字的类型都是浮点型的。
比如,5/2的结果是2.5,而不是2;除数为0的运算结果为正无穷大或负无穷大;0/0的结果是NaN;并且这些运算都不会报错!
2.%运算符用于获取第一个数除以第二个数的余数,结果符号与第一个数的符号保持一致。
比如,5/2的结果为1,-5%2的结果为-1。
3.+运算符可用作两个数字的加法运算,也可以做字符串的连接。
加法操作符的具体运算过程:(1).若其中一个操作数为对象,则会将对象转换为原始类值;(2).对象到原始值转换后,若其中一个操作数为字符串,则另外一个也会转换为字符串进行连接;(3).否则,两个操作数都转换为数字,进行加法操作。
例如:
{name:"hello,"}+{name:" xautlily!"};
//=>"[object object][object object]":两个对象转换为字符串后进行连接
{name:"hello,"}+"xautlily!"
//=>"[object object]xautlily!":对象转换为字符串后进行字符串连接
{name:"hello,"}+2015 ;
//=>"[object object]2015":对象先转换为字符串,接着将数字2015转换为字符串,最后进行字符串的连接
"1"+"2";
//=>"12":字符串连接
"1"+2;
//=>"12":其中一个操作数为字符串,因此2也转换为字符,进行字符串的连接
null+2;
//=>2:表达式中既无对象,也无字符串,运用(3),因此两个操作数均转换为数字(null转换为0)做加法
undefined+2
//=>NaN:undefine转换为数字后为NaN,然后与2做加法