前言
一、基本数据类型
js有5种基本数据类型,分别是:
Number:数值类型(整数,小数,负数) NaN是特殊的number类型,它和任何值都不相等,包括它自己
string:用单引或双引包裹起来的内容(字符串会原样输出)
Boolean: true真 false假
null:对象的占位符
undefined:未定义的变量
typeof用来检测数据类型
1.typeof 变量名 typeof和变量名中间有个空格
2.typeof(变量名)
代码如下(示例):
var a = 300
console.log(typeof(a)) //number
var b = '小明'
console.log(typeof(b)) //string
var c = true
console.log(typeof(c)) //boolean
var d = null
console.log(typeof(d)) //object 它是对象的占位符
var f
console.log(typeof(f)) //undefined
console.log(typeof typeof a) //string 两次typeof一定是"string"
二、复杂数据类型
复杂数据类型:object(里面包含 function、Array、Date。)symbol。
代码如下(示例):
var obj = {}
console.log(typeof obj) //object
var sym = Symbol('symbol')
console.log(typeof sym) //symbol
三、类型转换
1.转字符串
var num = 200
console.log(num+'') //这三个方法打印出来全是字符串的200 "200"
console.log(String(num))
console.log(num.toString())
注意:null和undefined没有这个方法
2.转数字
var str = "300"
console.log(str-0) //这三个方法打印出来全是数字的300 300
console.log(Number(str))
console.log(+str)
注意:转number的特殊值
console.log(Number(0)) //全都返回数字0
console.log(Number("0"))
console.log(Number(""))
console.log(Number(" "))
console.log(Number(null))
console.log(Number(false))
console.log(Number(true)) //1
console.log(Number(undefined)) //NaN
console.log(Number("abc")) //NaN
3.转布尔
console.log(Boolean(0)) //false
console.log(Boolean(null)) //false
console.log(Boolean(NaN)) //false
console.log(Boolean(false)) //false
console.log(Boolean(undefined)) //false
console.log(Boolean("")) //false
规定这6个值为假,其它全是真