数据类型和操作符

数据类型:
  1.局部变量在函数执行以后会被销毁,全局变量会一直存在,如果变量前没有加声明,则视为全局变量。
  2.数据类型共有六类:
    a.String:单引号或双引号来说明,如"string"
    b.Number:数字
    c.Boolean:布尔值,只有true和false两种值。
    d.undefind:只有一个undefind值,表示值为空。
    e.Null:只有一个null的值,表示一个空对象指针。
    f.Object:除了上述的其他类型
  3.typeof可以来检测数据类型,注意:null调用typeof会返回object,构造函数调用会返回function
  4.instanceof:用来判断一个变量是否某个对象的实例。
  5.判断是否为数组的两种方法:a.instanceof b.constructor
  6.NaN,即非数值,是一个特殊的数值。NaN是JS中唯一一个不等于自身的数值。isNaN()方法可以判断是否为NaN数值。
  7.数值转换:
    a.Number():可以用于任何数据类型
      Boolean值:true返回1,false返回0
      null值:返回0
      undefined:返回NaN
    b.parseInt():把字符串转换为整数
    c.parseFloat():把字符串转换为浮点数
  8.字符串转换:
    a.toString():该方法一般不必传递参数,如果调用数值的话,参数可以是输出数值的基数。
     不能对null和undefinded转换
    b.String():参数为要转换的数值,null返回'null' undefined返回'undefined'
操作符:
  1.一元操作符
    a.递增和递减操作符:分为前置和后置两种,前置是操作符在数值的前面,例如++a,--a,a的值在语句执行之前改变。
    后置操作符是操作符在数值的后面,例如a++,a--,a的值在语句执行之后改变。
    b.一元加减操作符:对非数值进行一元加减操作符时,可以转换为数值。例如:a="1",+a=1。
  2.位操作符
    a.位非:由~符号表示,表示返回数值的反码。
    b.位于:由&符号表示,对两个数值的二进制位数值进行与运算。
    c.位或:由|符号表示,对两个数值的二进制位数值进行或运算。
    d.位异或:由^符号表示,两个数值的二进制位数值如果同为0或同为1则返回0,否则返回1。
  3.布尔操作符
    a.逻辑非:由!符号表示
      对象返回false
      空字符串返回true
      非空字符串返回false
      0返回true
      任意非0数返回false
      null返回true
      NaN返回true
      undefined返回true
    b.逻辑与

      第一个操作是对象,则返回第二个整数。如果第二个为对象则返回对象,如果两个都是对象则返回第二个。
      null,NaN,undefined返回null NaN undefined。
   c.逻辑或
      第一个操作是对象,则返回第一个操作数。如果第一个操作的值为true,则返回true,否则返回第二个的操作数,如果两个都是对象则返回第一个。
      null,NaN,undefined返回null NaN undefined。
  4.加减乘除操作符
    a.加法
      有一个操作数为NaN,则结果为NaN。
      两个字符串可以通过加法符拼接起来,如果有一个是字符串,则另一个先转换为字符串再拼接。
    b.减法
      有一个操作数为NaN,则结果为NaN。
      如果操作数是字符串,则会先转换为Number后再进行操作。
  5.相等操作符
    a.相等和不相等:先转换,再比较。
      null和undefined返回为true
      如果有一个操作数为NaN,相等返回false,不相等返回true。如果两个都是NaN,则相反。
    b.全等和不全等:直接比较,不进行转换
      null和undefined相等但不全等,因为null和undefined的值类似,但是类型不一样。

 

posted @ 2017-01-06 15:11  andywux  阅读(297)  评论(0)    收藏  举报