ECMAScript的typeof操作符

1.typeof操作符的基本概念

typeof操作符是干什么用的?用于检测给定变量的数据类型。

为什么要检测?因为ECMASCript是松散类型的,变量可以存放任何数据类型的值。

2.typeof操作符基本用法
返回的字符串值返回值意义
"undefined"变量值未定义,变量值等于undefined
"boolean"变量值的类型是Boolean类型,布尔值
"string"变量值是字符串
"number"变量值是数值,Number类型
"object"变量值是对象或者null
"function"变量值是函数
var a;
typeof a;  // "undefined"

a =true;
typeof a;  //"boolean"

a = "message";
typeof a;  //"string"

a = 11;
typeof a;  //"number"

a = null;
typeof a;  //"object"

a = {};
typeof a;  //"object"

a = function(){
    console.log("1");
}
typeof a;  //"function"
 
3.typeof操作符需要注意的几点
  • typeof 操作符可以直接操作数值字面量。
typeof 11;
typeof "msg";
typeof true;
typeof null;
typeof {};
typeof function(){
    console.log("1");
}
 
  • typeof null;// "object",是因为null表示空对象的指针

  • function是Object,为什么返回"function"而不是"object"?

    从技术角度讲,函数在ECMAScript中是对象,不是一种数据类型。然而,函数也确实有一些特殊的属性,因此通过typeof操作符来区分函数和其他对象是有必要的。

  • typeof typeof true; // "string",typeof返回的是字符串

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值