读《高程3》系列之第三章3.1---操做符

1,操做符包括算术操做符(如加减号)、位操做符、关系操做符和相等操做符。操做符可以适用于不少值,例如字符串、数字、布尔值,甚至对象。不过在应用于对象时,相应的操做符一般都会调用对象都valueOf()或toString()方法,以便取得能够操做的值;函数

2,一元操做符spa

  只能操做一个值的操做符叫作一元操做符,有一元加减操做符(-,+),有递增递减操做符(++,--);code

2.1,递增和递减操做符对象

  递增和递减各有两个版本:前置型和后置型;前置型放在操做的变量以前,后置型放在操做的变量后;blog

var age=18;
age++;
++age;
age--;
--age;

它们无论是++仍是--,无论在前面仍是后面,都是加1或者减1;前置和后置的区别是:在一个运算过程当中前置型是先赋值(自身改变)后运算(表达式),后置型是先运算(运算表达式)后赋值(自身改变);字符串

这四个操做符对任何值都适用,遵循以下规则:console

  *在应用一个包含有效数字字符串时,先将其转换为数字,再执行加减1的操做;class

var age="18"

age++; //19;

  *在应用一个不包含有效数字字符串是,将变量的值转为NaN,变量

  *在应用布尔值false时,先将其转为0,再执行加减1的操做;方法

  *在应用布尔值true时,先将其转为1,再执行加减1的操做;

  *在应用浮点数值时,正常执行加减1操做;

var num=1.1

num--;

console.log(num);//0.10000000000000009

  *在应用对象时,先调用对象的valueOf()方法,以取得一个能够操做的值,而后对该值按上面规则运行;

2.2,一元加或一元减操做符;

  在对数值前面添加一元操做符,对数值不会产生任何影响;

var num=19;

num=+num;

num//19

  不过对非数字应用一元操做符时,该操做符将会想Number()函数同样将这个值进行数值转换;

var num="01";

num=-num;//-1;

var num1="1.1";

num1=-num1;//-1.1

var str="aa"

str=-str;//NaN;
相关文章
相关标签/搜索