typeof 运算符

typeof 运算符

语法: ()可选

typeof[(]expression[)]

返回值(6种):

  • number: 以下两种都返回number

    • 常规数字

    • 特殊的数字类型

      • Infinity: 表示无穷大

      • NaN: 特殊的非数字值

      • Number.MAX_VALUE: 最大数字

      • Number.MIN_VALUE: 最小数字(与零最接近)

      • Number.NaN: 非数字值

      • Number.POSITIVE_INFINITY: 正无穷大

      • Number.NEGATIVE_INFINITY: 负无穷大

  • string
    字符串

  • boolean
    布尔值(true, false)

  • object

    • 对象: 比如window, {}, ....

    • 数组

    • null

  • function: 函数

  typeof(eval) === 'funtion' // true
  typeof(Date) === 'funtion' // true
  • undefined: 未定义,比如不存在的变量、函数或者undefined
    typeof(undefined)

常见用法

  • 测试变量的数据类型

  • 判断一个变量是否存在

常见于if判断
错误写法:

// 如果a不存在(未声明)则会出错
if (a) {
  ...
}
// Uncaught ReferenceError: a is not defined
  正确写法:
if (typeof a === 'undefined') {
  ...
}

还常见于三元表达式中

closable = typeof closable === 'undefined' ? true : closable;

局限性

Array, Null等特殊对象使用typeof一律返回object

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值
>