欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

深入理解typeof操作符

程序员文章站 2022-07-05 17:08:18
typeof可以检测数据的类型 typeof返回结果的其实是字符串:可以通过以下测试出来 typeof返回的数据类型有6种: 1.number 数字类型的操作数typeof(123); 2.string 字符串类型的操作数typeof('123'); 3.boolean 布尔值如:typeof(tr ......

typeof可以检测数据的类型

typeof返回结果的其实是字符串:可以通过以下测试出来

console.log( typeof(typeof(a))); // string

 typeof返回的数据类型有6种:

1.number-----数字类型的操作数typeof(123);

 NaN属于number类型。虽然是非数,但是非数也是数字的一种。

2.string--------字符串类型的操作数typeof('123');

3.boolean-----布尔值如:typeof(true);

4.object--------对象,数组,null,比如typeof(window),typeof(document),typeof(null);

其实null并不是一种对象,只是因为历史遗留性的问题,null通常用来作为对象占位符,所以被浏览器归到了object里面了。

5.function-----函数类型,比如typeof(eval),typeof(Date),typeof(Number),typeof(Object).

 

内置构造函数的分类
   ① ECMAScript核心语法自带内置构造函数: 有一部分内置构造函数:Function、 Object、 Array、 String、 Number、 Boolean、 RegExp、 Error、 Date
   ② 宿主环境: 也会支持一部分构造函数  例如Image。

 

6.undefined--未定义的变量,函数或者undefined

 注意:typeof测试任何变量都不会报错,未定义的变量会返回字符串undefined

例题:

var a = typeof undefined == typeof NULL;
console.log(a); //true
// 因为javascript严格区分大小写,这里的NULL不等于null,这里的NULL为undefined