JavaScript中的数据类型转换 NaN

一、判断数据类型的两种方法:

1、 typeof (检测的数据)

  	var a = "hello world";
    var b = 6.5;
    // 检测a的数据类型
    console.log(typeof(a));     //string
    //检测a,b的数据类型
    console.log(typeof(a),typeof(b));  // string  number

2、instanceof 检测的数据

instanceof 是用来判断 A 是否为 B 的实例,表达式为:A instanceof B,如果 A 是 B 的实例,则返回 true,否则返回 false。

    [] instanceof Array; // true
	{} instanceof Object;// true
	new Date() instanceof Date;// true
	 
	function Person(){};
	new Person() instanceof Person;
	 
	[] instanceof Object; // true
	new Date() instanceof Object;// true
	new Person instanceof Object;// true

我们发现,虽然 instanceof 能够判断出 [ ] 是Array的实例,但它认为 [ ] 也是Object的实例,为什么呢?

我们来分析一下 [ ]、Array、Object 三者之间的关系:

从 instanceof 能够判断出 [ ].proto 指向 Array.prototype,而 Array.prototype.proto 又指向了Object.prototype,最终 Object.prototype.proto 指向了null,标志着原型链的结束。因此,[]、Array、Object 就在内部形成了一条原型链:
在这里插入图片描述

二、转换为数字类型(number):

数据类型Number()parseInt()parseFloat()Math.round()
string字符串内容为数字数字数字向下取整数字数字四舍五入
字符串内容不为数字NaNNaNNaNNaN
boolean布尔值为true1NaNNaN1
布尔值为false0NaNNaN0
undefinedNaNNaNNaNNaN
null0NaNNaN0

注: 要转换的数据都放在括号里

三、转换为字符串类型(string):

数据类型String().toString()
number内容为数字的字符串内容为数字的字符串
boolean内容为true或false的字符串内容为true或false的字符串
undefined内容为undefined的字符串报错,不可用
null内容为null的字符串报错,不可用

注:.tostring()的用法为: 要改变类型的数据.toString()

四、转换为布尔类型(boolean):

数据类型Boolean()
number非0数字true
0false
string非空字符串true
false
undefinedfalse
nullfalse

注: 要转换的数据都放在括号里

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值