typeof 的取值类型范围以及 typeof和instanceof的区别

vaScript 中 typeof 和 instanceof 常用来判断一个变量是否为空,或者是什么类型的。但它们之间还是有区别的:typeof 是一个一元运算,放在一个运算数之前,运算数可以是任意类型。
首先我们要先复习一下,什么是基本类型,什么是引用类型。
基本类型:指简单的数据段,包括5种:

Undefined、String、Number、Null、Boolean

引用类型:可能由多个值构成的对象:

Object、Array、RegExp、Function、Date、 
还有三种特殊的引用类型:包装类型:String、Number、Boolean

判断基本类型可以用typeof()
例子

var a = 'aa';
typeof(a); //string
var b = 1;
typeof(b); //number
var c;
typeof(c); //undefined
typeof(null); //object
var d = true;
typeof(d); //boolean

但是判断引用类型就不行了
var f = [1,2,3]
typeof(f);  //object  只能检测为对象

instanceof 用于判断一个变量是否某个对象的实例
判断引用类型要用instanceof

var a = function(){return 'hello';}
a instanceof Function;//true
a instanceof Object; //true
//基本上都属于Object,所以都是true

总结:typeof 返回值有六种可能: “number,” “string,” “boolean,” “object,” “function,” 和 “undefined.”

instanceof返回一个 Boolean 值,指出对象是否是特定类的一个实例

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值