JavaScript数据类型和数据类型之间的转换关系

1 JavaScript中的数据类型

这里写图片描述

2 JavaScript类型转换

这里写图片描述
undefined类型转换

<script type="text/javascript">
  var a = undefined;
  console.log(a); //"undefined"
  console.log(new Number(a).valueOf()); //NaN
  console.log(new Boolean(a).valueOf()); //false
</script>

null类型转换

<script type="text/javascript">
  var a = null;
  console.log(a); //null
  console.log(new Number(a).valueOf()); //0
  console.log(new Boolean(a).valueOf()); //false
</script>

true类型转换

<script type="text/javascript">
   var a = true;
   console.log(a); //"true"
   console.log(new Number(a).valueOf()); //1
   console.log(new Boolean(a).valueOf()); //true
</script>

false类型转换

<script type="text/javascript">
   var a = false;
   console.log(a); //"false"
   console.log(new Number(a).valueOf()); //0
   console.log(new Boolean(a).valueOf()); //false
</script>

“”(空字符串)类型转换

<script type="text/javascript">
   var a = "";
   console.log(a); //(空字符串)
   console.log(new Number(a).valueOf()); //0
   console.log(new Boolean(a).valueOf()); //false
</script>

1.2“(非空字符数组)类型转换

<script type="text/javascript">
   var a = "132.4";
   console.log(a);//132.4
   console.log(new Number(a).valueOf()); //132.4
   console.log(new Number(a).valueOf() == 132.4)// true
   console.log(new Boolean(a).valueOf()); //true
</script>

123.4 aaa”(非空,非数字字符)类型转换

<script type="text/javascript">
   var a = "132.4 qqqq";
   console.log(a);//"132.4 qqqq"
   console.log(new Number(a).valueOf()); //NaN
   console.log(new Boolean(a).valueOf()); //true
</script>

0-0 转化:

<script type="text/javascript">
   var a = 0;
   console.log(a);//0
   console.log(new Number(a).valueOf()); //0
   console.log(new Boolean(a).valueOf()); //false
   var b = -0;
   console.log(b); //-0
   console.log(new String(b).valueOf()); //0
   console.log(new Number(b).valueOf()); //-0
   console.log(new Boolean(b).valueOf()); //false
</script>

NaN类型转化

<script type="text/javascript">
   var a = NaN;
   console.log(a);//NaN
   console.log(new String(a).valueOf()); // NaN
   console.log(new Number(a).valueOf()); //NaN
   console.log(new Boolean(a).valueOf()); //false
</script>

Infinity 和 -Infinity 类型转换:

<script type="text/javascript">
   var a = Infinity;
   console.log(a);//Infinity
   console.log(new String(a).valueOf()); // Infinity
   console.log(new Number(a).valueOf()); // Infinity
   console.log(new Boolean(a).valueOf()); //true
   var b = -Infinity;
   console.log(b);//-Infinity
   console.log(new String(b).valueOf()); // -Infinity
   console.log(new Number(b).valueOf()); // -Infinity
   console.log(new Boolean(b).valueOf()); //true
</script>

{}(任意对象)

<script type="text/javascript">
   var a = {};
   console.log(a);Object{}
   console.log(new String(a).valueOf()); //[object Object]
   console.log(new Number(a).valueOf()); // NaN
   console.log(new Boolean(a).valueOf()); //true
   console.log(a.toString()); // [object Object]
   console.log(new Number(a).toString()); // NaN
   console.log(new Boolean(a).toString()); //true
</script>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值