2020.6.10笔记——数据类型和变量

本文深入解析JavaScript中的数据类型,包括原始类型如数值、字符串、布尔值等,复合类型如对象、数组、函数,以及特殊类型如undefined和null。探讨了各种类型的特性、使用场景及相互之间的转换。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、原始数据类型

1、数据型

JavaScript中的数值包含整数和浮点数,所有数值都以双精度浮点型来表示。
双精度浮点数可以表示-2的53次方到2的53次方的整数,也可以表示为正负1.7976的10的308次方的最大值和正负2.2250乘以10的-308次方的浮点数
数值型
十进制数
12
1.2
-23
.222e33
-1.3e3
3.E-2
12e+20
十六进制
0x0
0XABCDEF
0x1a2b3c4d
八进制数
00
0123
0241234
特殊值:
1)Infinity无穷大
1.79e309
-1.79e309
2)NaN
0/0
可以通过isNaN()检测值是否为NaN

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	</head>
	<body>
		<script type="text/javascript">
		//十进制
			var a=12;
			a=-23;
			a=12.3;
			a=.23e4;
			a=2e3;
			a=3E-2;
			//十六进制
			a=0xABCDEF;
			a=0X0;
			a=0Xfff;
			//八进制
			a=0123;
			a=01234324;
			//正无穷大Infinity
			a=1.79e310;
			a=-1.79e310;
			//NaN:Not a Number
			a=0/0;
//			alert(a);
			//通过isNaN()来检测是否是NaN值
//			alert(isNaN(a));
			//NaN不能和自身比较
//			alert(NaN===NaN);
//字符串类型
			var str='this is a test';
			var str1="hello world";
//			var str2=aaaa;
//			alert(str);
//			alert(str1); king's
//			var username="king's";
//			var username='king\'s';
//			alert(username);
//			var str2='a\nb\rc\td"e\\f';
//			alert(str2);
			//布尔类型
			var married=true;
//			married=TRUE;
//			alert(true);
//声明变量为赋值
//			var test6;
//赋值为不存在的属性值
			var test7=String.NotExists;
//			alert(test7);
//null值
			var test8=null;
			alert(test8);
			alert(null===undefined);
		</script>
	</body>
</html>

2、字符串类型

1)定界符:
“”|’’

2)转义符:
\n->回车换行
\r->换行
\t->水平制表符
“->”
‘->’

3)布尔类型:
true|false

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	<script type="text/javascript">
		/*
		 if(exp){
		 	exp为true的代码段;
		 }else{
		 	exp为false的代码段;
		 }
		 */
		//其它类型转换成布尔类型假的有
		var a;//undefined->false
		//typeof得到变量的类型
//		alert(typeof a);
		 	a=null;//null->false
		 	//0 0.0 NaN->false
		 	a=0;
		 	a=0.0;
		 	a=0/0; //NaN
		 	a=NaN;
//		 	alert(a);
			a='';//空字符串->false
			a='0';
			a=' ';
//			alert(typeof a);
//		if(a){
//			alert('真');
//		}else{
//			alert('假');
//		}
//其它类型转换成数值型
			var b=undefined;//undefined->NaN
			b=null;//null->0
			b=true;//true->1
			b=false;//false->0
//			alert(1+b);
			var c='12';//'12'->12
			c='3king';//'3king'->NaN
			c='true';
//			alert(2*c);
			c='33';
//			alert(typeof c);
//			c=c*1;
//			alert(typeof c);

			
			
	</script>
	</head>
	<body>
		<h1>隐式转换的例子</h1>
		<script type="text/javascript">
			//其它类型转换成字符串型
			document.write(undefined);//'undefined'
			document.write('<br/>');
			document.write(null);//'null'
			document.write('<br/>');
			document.write(NaN);//'NaN'
			document.write('<br/>');
			document.write(123);//'123'
			document.write('<br/>');
			document.write(true);//'true'
			document.write('<br/>');
			document.write(false);//'false'
			document.write('<br/>');
			alert(1+"1");//拼接字符串
			alert('2'+12);//拼接字符串
		</script>
	</body>
</html>

二、复合数据类型

1、对象(object)
2、数组(array)
3、函数(function)

三、3.特殊数据类型

1、无定义数据类型undefined

undefined用来表示不存在的值或者尚未赋值的变量。对一个变量只声明不赋值或者赋予一个不存在的属性值,都会使这个变量的值为Undefined

2、空值null

null表示空值,表示什么都没有,相当于一个占位符。
null和undefined的区别就是undefined表示变量未被赋值,而null表示变量被赋予了一个空值。

四、变量

1、声明变量

通过var关键字声明变量
可以声明变量的同时给变量赋值
可以一次声明一个变量也可以一次声明多个看变量
如果只声明变量未对其赋值,默认值为undefined
如果变量重名产生覆盖

注意:
变量严格区分大小写
变量名称不要包含特殊字符
变量名称最好遵循驼峰标记法或者下划线法
变量名称最好含义明确

2、变量在内存中的存储与释放

1)收集方式
2)收集内容
3)回收算法

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
		<script type="text/javascript">
			//声明变量
			var a;
			var b;
			var c,d;
//			alert(a);
//声明变量的同时并且赋值
			var test='this is a test';
			var test1=12;
			var test2=1.2;
			var test3=true;
			var test4=false;
//			alert(test);
//声明多个变量赋相同的初始值
			var a=b=c=d=e=1;
//			alert(a);
//变量重名会产生覆盖
			a=33;
//			alert(a);
//变量名称严格区分大小写
		 var username='king';
		 var USERNAME='QUEEN';
//			alert(username);	
//			alert(USERNAME);
//变量名称最好含义明确,以字母或者下划线开始,跟上数字字母下划线
		var age=12;
		var test5='hello';
//		var 12a='bb';
//		alert(12a);
		var _test='hello';
//		alert(_test);
//驼峰标记法
		var firstName='king';//小驼峰
		var FirstName='queen';//大驼峰
		var first_name='maizi';//下划线法
		</script>	
	</head>
	<body>
		
	</body>
</html>
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值