javascript 中的数据类型可以分为两大类:原始类型,对象类型
原始类型:布尔值,字符串,数字,null,undefined
对象类型:用户创建对象的类型,数组,函数,自定义对象,js自带的日期(Date),正则表达式(RegExp),错误(Error)对象
上面两种分类也不是固定的,可以根据不同的理解分类(可以很为可变类型,不可变类型,涵方法不涵方法类型)
1.javascript 中所有的类型 和 布尔值类型
javascript中所有的类型都能转换 布尔值类型
0,null,undefined,“”,NaN 都会转换成false
if(0&undefined&null&""&NaN){ alert("we are true"); }
所有的不为null的对象会转换成 true,
2. null 和 undefined
null 表示空值;
typeof(null) =》object 所以null 为特殊的对象类型
undefined 表示未定义类型;
数字,字符串,对象都可以为null
3.类型比较
对象与对象比较时,只有当对象的应用相同是,对象才相同, 就算是对象内所有的属性,属性值都相同,对象也不相同
function dodo(){ var objectA = {a1 = "I am a1",a2="I am a2"} var objectB = {b1 = "I am b1",b2="I am b2"} if(objectA === objectB){ alert("we are brother"); }else{ alert("stranger"); } }
运行上方法 会弹出 “stranger”
function dodoTwo(){ var a = []; var b =a; b[0] =1; if(a === b) { alert(a[0]) } else{ alert("whar ever"); } }
运行上方法 会弹出 “1”
4.js 类型转换
1).隐式类型转换(此处不述)
2).显示类型转换
Number(“3”)
String(false)
Boolean([])
Object(3)
转换成数字类型:
parseInt(变量) 如果变量为不能转换成数字类型,则返回 NaN
parseFloat(变量) 同上
Number(变量) 同上
转换成字符串
toString() 除了null 和undefined 所有的变量都有toString()方法
var a =0;
a.toString();
toFixed()方法: Number类的方法,根据小数点后面的位数,将数字转换成字符串
var b = 123123.123123;
b.toFixed(0) =>123123;