<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<!-- JavaScript堆内存与栈内存
1、堆内存:基本数据类型,如整型,字符串
2、栈内存:引用数据类型,如对象
-->
<!-- JavaScript的基本数据类型
1、数字类型:Number,包括整型int和浮点型float和NaN,
NaN是number类型,但是NaN不等于,不大于,也不小于任何数字,包括NaN
2、字符串:string,字符,符号,数字组成的序列
3、布尔值:Boolean,false或true,用于调节判断
4、空:Null 声明一个空对象,只能是对象(引用数据类型)
5、未定义:Undefined,内部只有一个值undefined,如果声明了某个变量但是没有赋值,那么变量的类型就是undefined
-->
<!-- JavaScript引用数据类型
1、对象:Object
-->
<script>
//数字类型
var s1=123;
alert(s1);
//NaN
alert(NaN == 0);
alert(NaN > 0);
alert(NaN < 0);
alert(NaN != 0);
//字符串
var s2="hello";
alert(s2);
//布尔值
while (true){
alert("success");
break
}
//Null
var obj=null;
alert(obj);
//未定义
var s3=undefined;
alert(s3);
</script>
<!-- 数据类型转换
1、数字+字符串,会将数字转换成字符串进行拼接
2、数字+布尔值,会将布尔值转换成数字进行运算
3、字符串+布尔值,会将布尔值转换成字符串拼接
4、parseInt:转换成int类型
-->
<script>
alert(1+"hello");
alert(1+true);
alert("hello"+true);
alert(parseInt(3.14));
alert(parseInt("a3.14"));//NaN:当字符串转换数字失败时就是NaN数据,not a number
</script>
<!-- 打印数据类型
1、typeof:只能识别基本数据类型,不能识别引用数据类型(对象)
2、instanceof:判断数据类型,可以识别引用数据类型(对象)
-->
<script>
//typeof
var t1=123;
var t2=NaN;
var t3="hello";
var t4=false;
var t5=null;
var t6=obj;
console.log(typeof (t1));
console.log(typeof (t2));
console.log(typeof (t3));
console.log(typeof (t4));
console.log(typeof (t5));
console.log(typeof (t6));
//typeof 无法识别引用数据类型,instanceof可以判断,返回True或者False
var s1 = new String("hello");
alert(typeof(s1));
alert(s1 instanceof String);
</script>
</body>
</html>
复制