返回

JS高级 03-08 数据类型-typeof操作符

发布时间:2022-09-18 14:43:41 562
# javascript# html# java# java# 技术

鉴于ECMAScript是松散类型的,因此需要有一种手段来检测给定变量的数据类型— typeof就是负责提供这方面信息的操作符。对一个值使用typeof操作符可能返回下列某个字符串:

  • "undefined“— 如果这个值未定义;
  • “boolean"— 如果这个值是布尔值;
  • “string"— 如果这个值是字符串;
  • “number"— 如果这个值是数值;
  • ”object"— 如果这个值是对象或null;
  • “function"— 如果这个值是函数。

下面是几个使用typeof操作符的例子:

03-08TypeofExample.html

var message = "some string";
console.log(typeof message);//"string"
console.log(typeof (message));//"string"
console.log(typeof 45); //"number"

这几个例子说明,typeof操作符的操作数可以是变量(message),也可以是数值字面量。注意,typeof是一个操作符而不是函数,因此例子中的圆括号尽管可以使用,但不是必需的。有些时候,typeof操作符会返回一些令人迷惑但技术上却正确的值。比如,调用typeof null 会返回"object”,因为特殊值null被认为是一个空的对象引用。Safaris及之前版本、Chrome7及之前版本在对正则表达式调用typeof操作符时会返回"function",而其他浏览器在这种情况下会返回"object"。

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

 

特别声明:以上内容(图片及文字)均为互联网收集或者用户上传发布,本站仅提供信息存储服务!如有侵权或有涉及法律问题请联系我们。
举报
评论区(0)
按点赞数排序
用户头像
精选文章
thumb 中国研究员首次曝光美国国安局顶级后门—“方程式组织”
thumb 俄乌线上战争,网络攻击弥漫着数字硝烟
thumb 从网络安全角度了解俄罗斯入侵乌克兰的相关事件时间线
下一篇
JS高级 03-12 数据类型-Number类型 2022-09-18 14:23:12