javascript基础知识梳理-原始类型

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
<script type="text/javascript">
	//原始类型:string,number,bool,null,undefined
	//当number+bool时,会将bool的true转换成1,false转换成0,颠倒顺序不影响结果
	var result = true + 10;
	console.log("10 + true = " + result);
	//当number+null时,会将null转换成0做加法,颠倒顺序不影响结果
	result = 10 + null;
	console.log("10 + null = " + result);
	//当number+undefined时,结果是NaN,颠倒顺序不影响结果
	result = undefined + 10;
	console.log("10 + undefined = " + result);
	//当undefined+undefined时,结果是NaN
	result = undefined + undefined;
	console.log("undefined + undefined = " + result);
	//当undefined+bool时,结果是NaN
	result = undefined + true;
	console.log("undefined + true = " + result);
	//当undefined+null时,结果是NaN,综上undefined与number,null,bool值做四则运算,结果都是NaN
	result = undefined + null;
	console.log("undefined + null = " + result);
	//当string+number时,结果是string
	result = "10" + 10;
	console.log('"10" + 10 = ' + result);
	//当number+string时,结果还是string
	result = 10 + "10";
	console.log('10 + "10" = ' + result);
	//当number*string时,结果就变成了number,如果string无法转换成number,则结果是NaN
	result = 10 * "10";
	console.log('10 * "10" = ' + result);
	result = 10 * "10g";
	console.log('10 * "10g" = ' + result);
	//当undefined&&undefined,值仍然为undefined
	result = undefined && undefined;
	console.log("undefined && undefined = " + result);
	//引用类型,对象,数组,函数
	//当string+object,结果为string
	result = "10" + {};
	console.log('"10" + {} = ' + result);
	//当number+object,结果也是string
	result = 10 + {};
	console.log("10 + {} = " + result);
	//当number*object,结果为NaN,其实这时候object转换成了一个string,并且该string无法转换成number
	result = 10 * {};
	console.log("10 * {} = " + result);
	//原始类型之间的比较
	result = null == undefined;
	console.log("null == undefined:" + result);
	result = null == 0;
	console.log("null == 0:" + result);
	result = null == "0";
	console.log("null == '0':" + result);
	result = null == false;
	console.log("null == false:" + result);
	result = undefined == 0;
	console.log("undefined == 0:" + result);
	result = undefined == "0";
	console.log("undefined == '0':" + result);
	result = undefined == false;
	console.log("undefined == false:" + result);
	result = "0" == 0;
	console.log("'0' == 0:" + result);
	result = "0" == false;
	console.log("'0' == false:" + result);
	result = 0 == false;
	console.log("0 == false:" + result);
	//事实证明,0,'0',false是两两相等的,和null,undefined都不相等,但是null和undefined确是相等的
	//类型转换函数的使用,Number,String,Boolean,Object
</script>
</head>
<body>

</body>
</html>

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值