布尔值Boolean
关键字:true/false
例如: 100>18 就是布尔表达式 它的表达的结果是布尔值
null
空这种类型的数据只有一个数据就是null
null 的意义==>它代表了一个变量是有数据的 只不过还没有写业务数据
undefined的意义==>为程序的安全而设定的一种数据
var a = 200;
a=400;
a=null;
var b;
console.log(a);//null
console.log(b);//undefined
console.log(yj);//报错
字符串string
字符串的双引号不是字符 是一种标记为了跟变量名做区分
var a="hello"
var b=a
console.log(a) //hello
字符串可以是单引号 也可以是双引号 还可以是反引号(es6)
var a='he"l"lo' //he"l"lo
var a="he'l'lo" //he'l'lo
var a=`he'l'lo` //he'l'lo
console.log(a)
如果a或者b有任意一个是字符串 就会把另外一个不是字符串的数据转化为字符串然后拼接
var a=100
var b="200"
var c=a+b
console.log(c) //100200
typeof
如何分清一个变量中保存的数据是什么类型的数据
null检测出来是一个Object
var re=typeof(200)
console.log(re) /number
var re2=typeof("hello")
console.log(re2) //string
var re3=typeof(null)
console.log(re3) //Object
var re4=typeof(undefined)
console.log(re4) //undefined
var re5=typeof(true)
console.log(re5) //boolean
var re6=typeof(function(){})
console.log(re6) //function
typeof是一个操作符而不是一个函数,是检测并不是取值,检测未申明的变量不会报错
var re=typeof(a)
console.log(re) //undefined
var b=a+20 //此处才是报错原因,a进行取值,但未申明
var re=typeof(a)
console.log(re) //报错
案例
var a=100
a=a+21
var b=a%19
var re7=typeof(b)
//选择题 re7变量的数据类型是什么?
//re7的值为"number" 所以为string类型