数据类型的转换

1.判断数据类型

js中,我们用typeof来检验数据的类型

<script type="text/javascript">
			
			var name = '张三';
			var age = 21;
			var bool = true;
			var array = [1,2,3,4]
			var a;
			console.log(typeof name);   //string
			console.log(typeof age);	//number
			console.log(typeof bool);	//bnoolean
			console.log(typeof array);	//object
			console.log(typeof a);		//undefined
		</script>

2.判断是不是数值型(isNaN())

如果isNaN()里面判定的值为数值型,返回false,反之返回true

	<script type="text/javascript">
		
			console.log(isNaN(2));				//false
			console.log(isNaN('2'));			//  因为这是一个字符串数字,故返回false
			console.log(isNaN('zhangsan'));		//true
			console.log(isNaN());				//true
			console.log(isNaN(''));				//false
		</script>

3.字符串类型的转换

<script type="text/javascript">
		//数值型转换成字符串型
		
			var num = 12;
			var str = num.toString(num)
			console.log(typeof str);        //string
			var str1 = String(num)
			console.log(typeof str1);		 //string
			var str2 = num +'';				 //使用 '+' 实现隐式转换
			console.log(typeof str2);		 //string
			
		//布尔型转换成字符串型
		
			var bool = true;
			var str3 = bool.toString();
			console.log(typeof str3);			//string
			var str4 = String(bool)
			console.log(typeof str4);			//string
			var str2 = bool +'';				//使用 '+' 实现隐式转换
			console.log(typeof str2);		 	//string
		</script>

4.数值型的转换,转换结束字体会变蓝色

<script type="text/javascript">
			//字符串型转换为数值型
			var a = '12';
			var b = '12.12';
			var c = 'abc';
			var d = '21abc';
			var e = '21';
			var f = '2021';
			var num = parseInt(a)      	//parseInt 将定义的字符串数字转换成整数。对小数只取整数部分
			console.log(num);
			var num1 = parseFloat(b)	//parseFloat 将定义的字符串数字转换成定义的数字
			console.log(num1);
			var num2 = parseFloat(c)	//返回NaN,因为定义的不是数字
			console.log(num2);
			var num3 = parseFloat(d)	//返回12,因为定义的前半部分是数字
			console.log(num3);
			var num4 = e - 2;			//隐式转换,- / * 三个算数运算符可以实现,+ 不行
			console.log(num4);			
			var num5 = 	Number(f)		// 强制转换,霸道转换法
			console.log(num5);
			console.log(typeof num,typeof num1,typeof num2,typeof num3,typeof num4,typeof num5);  //num * 6
			//布尔型转换成数字型
			var bool = true;
			var bool1 = false;
			var num6 = bool - 1;
			console.log(num6);				//隐式转换,- / * + 算数运算符可以实现,
			console.log(typeof num6);       //num
		</script>

5.布尔型的转换

<script type="text/javascript">
			//字符串型转换为布尔型
			
			var age = '12';
			var year = 'qwe';
			var a = '';
			var bool = Boolean(age);          // 强行转换成布尔型,但返回结果为true
			console.log(bool);
			console.log(typeof bool);
			var bool1 = Boolean(year);
			console.log(bool1);
			console.log(typeof bool1);
			var bool2 = Boolean(a);          // 强行转换成布尔型,但返回结果为false
			console.log(bool2);				
			// 字符串的值,返回的都是true,不给值的话返回false
			
			//数值型转换为布尔型
			
			var num = 1;
			var bool3 = Boolean(num);          // 强行转换成布尔型,num = 1,所以返回结果为true
			console.log(bool3);
			var num1 = 0;
			var bool4 = Boolean(num1);          // 强行转换成布尔型,num1 = 0,所以返回结果为false
			console.log(bool4);
		</script>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值