详细分析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就会成全局变量
以上所述就是本文的全部内容了,希望大家能够喜欢。