Javascript 之 变量

1、值类型(基本类型)

  number(数字) NaN 不等于任何值,包括自身

  string(字符串)

  boolean(布尔)

  undefined

  特点:每个变量都能存储各自的值,不会相互影响

2、引用类型(对象类型)

  Array(数组)

  Function(函数)

  Object(对象)

  特点:通过指针指向对象,会相互影响,共用内存空间,节省内存空间

3、null 特殊的类型,可以理解为空的对象指针

typeof

  可判断基本类型的数据类型,遇到引用类型时,只能判断Function数据类型,比较特殊的是判断null时显示Object类型。

instanceof

  利用原型继承机制判断引用类型的数据类型  

var arr = [1, 2, 3];
arr instanceof Array; //true  判断对象 arr 的属性是否出现在 Array 的原型链上

类型转换

  1、字符串拼接

    把一个数字类型转换成字符时,可以+''(加上一个空字符串)。  var n = 3 + '';  // '3'

    把一个字符串类型的数字转换成数字类型时,可以-0(减零);  var n = '3' - 0;  // 3

  2、==运算符、if语句、逻辑运算

    null、undefined、零、NaN、空字符串转化为false,其他的都是true

    在if语句中判断一个变量会被当作true还是false,可直接在变量前加!!(双非)。 if(!!n){...}

何时使用==,何时使用===

1、当需要判断一个对象属性是否存在时

if(obj.a == null){
  //这里相当于obj.a === null || obj.a === undefined 的简写形式
  //这也是jQuery 源码中的推荐写法      
}

2、在一个函数里面判断一个参数时候存在时

function(a,b){
  if(a == null){...}        
}

 

原文地址:https://www.cnblogs.com/joffe/p/7663966.html