详细分析JavaScript变量类型

变量类型                 

                只有6种 : 四种原始数据类型boolean , number, string , undefine, 其他object,function是对象 

typeof,instanceof  

                直接看实例:

    var obj = null;
    console.info(typeof obj);    //Object
    var arr = [];
    console.info(arr instanceof Object);  //true
    console.info(arr instanceof Array);  //true

原始数据类型的包装对象(Wapper Object)

              string,number,boolean都对应着特定的包装对象

数据类型转换 

             用parseInt,parsetFolat转换到数值类型

console.log(parseInt("34", 10)); //34
console.log(parseInt("34s5b", 10)); //34
console.log(parseInt("s", 10)); //NaN
console.log(parseInt(3.14, 10)); //3

    javascript是动态类型的编程语言,同一个变量,抓取啥类型的数据就是啥种变量类型

//number
var value = 100;
//string
value = "qiu";
//object
value = [1, 'two', 3];

"="号的各种花样:

               =         赋值
               ==       判等
               ===     严格判等

var x = 42;
var y = "42";
console.log(x == y) //true;
console.log(x === y) //false

undefined  vs  null

              udefine: 指变量未定义,没有一个有效值   (还没变量,何从谈值)
               null :       nothing , 某变量不引用任何的对象。 null是对象 ,类型object   (有变量,但不引用值)

var obj = null;
if (obj === null) {
alert("obj === null"); //此句将执行
}
else {
alert("obj!=null");
}
alert(typeof obj); //object

                undefine与null的 判等

var myVar;
//true
console.log(typeof myVar === "undefined");
console.log(myVar === undefined);
var myVar2 = null;
console.log(typeof myVar2); //object
//true;
console.log(myVar2 == null);
console.log(myVar2 === null);
//true
console.info(myVar == myVar2); //undefine == null; 是true
//false
console.info(myVar === myVar2); //undefine === null; 是false

true and false

                 undefined, null,NaN,"",0
                 除这些值 ,其他值为 true;

运算符:!!与 ||

                !!  把后面的表达式转为boolean 值,返回true or false
                !!"qiu"     true
                !!null      false
                
                ||
                var ns = ns || {}
                如果 ns 未定义 返回 {} , 否则返回ns
 

注:定义变量必须要 var,否则掉坑!不写var就会成全局变量

以上所述就是本文的全部内容了,希望大家能够喜欢。