javascript中用typeof测数据的类型,为什么没有null类型?并且new的全是object类型?

查看:90
本文介绍了javascript中用typeof测数据的类型,为什么没有null类型?并且new的全是object类型?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

1.数据类型不是就六种吗(number,String。。。。)
2.typeof判断数据类型
如果var x =null;的时候为什么判断出来时object类型?
3.只要是new出来的都是object类型?
如果var x = new Number();用typeof判断也是object类型呀?
4.var x = new Function();用typeof是function类型,可是数据类型中没有function类型呀?

解决方案

null被认为是空对象,使用typeof会返回Object

使用new Function构造函数的方式创建的实例都是对象。

var x = new Number();使用typeof会返回Object

使用typeof是能检测类型,但此类型不是javascript分出来的那六种类型。typeof多用于检测基本类型。检测对象类型使用的多是instanceof

typeof undefined;//undefined
typeof true;//boolean
typeof 'haha'//string
typeof 1;//number

var a = new Function();
a instanceof Function;//true
a instanceof Object;//true

Person() {}//声明自定义函数
var b = new Person();
b instanceof Person;//true
b instanceof Object;//true    

这篇关于javascript中用typeof测数据的类型,为什么没有null类型?并且new的全是object类型?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆