首页 > 代码库 > 第九十九节,JavaScript数据类型

第九十九节,JavaScript数据类型

JavaScript数据类型

 

 

学习要点:

1.typeof操作符

2.Undefined类型

3.Null类型

4.Boolean类型

5.Number类型

6.String类型

7.Object类型

 

ECMAScript中有5种简单数据类型:Undefined、Null、Boolean、Number和String。还有一种复杂数据类型——Object。ECMAScript不支持任何创建自定义类型的机制,所有值都成为以上6中数据类型之一。

 

一.typeof操作符,返回数据的类型

typeof操作符是用来检测变量的数据类型。对于值或变量使用typeof操作符会返回如下字符串。

返回的字符串

描述

undefined

未定义值的变量

boolean

布尔值

string

字符串

number

数值

object

对象或null(类型)

function

函数

使用方法:

var box = ‘李炎恢‘;
alert(typeof box);  //typeof操作符打印类型,可以是变量
alert(typeof ‘李炎恢‘); //也可以直接是字面量,也就是直接写数据
//返回string

typeof操作符可以操作变量,也可以操作字面量。虽然也可以这样使用:typeof(box),但,typeof是操作符而非内置函数。PS:函数在ECMAScript中是对象,不是一种数据类型。所以,使用typeof来区分function和object是非常有必要的。

 

Undefined类型,声明定义了变量但没给变量赋值的类型

Undefined类型只有一个值,即特殊的undefined。在使用var声明变量,但没有对其初始化时,这个变量的值就是undefined。

var box;
alert(box);

PS:我们没有必要显式的给一个变量赋值为undefined,因为没有赋值的变量会隐式的(自动的)赋值为undefined;而undefined主要的目的是为了用于比较,ECMAScript第3版之前并没有引入这个值,引入之后为了正式区分空对象与未经初始化的变量。

未初始化的变量与根本不存在的变量(未声明的变量)也是不一样的。

var box;
alert(age);

PS:如果typeof box,typeof age都返回的undefined。从逻辑上思考,他们的值,一个是undefined,一个报错;他们的类型,却都是undefined。所以,我们在定义变量的时候,尽可能的不要只声明,不赋值。

 

第九十九节,JavaScript数据类型