手机
当前位置:查字典教程网 >编程开发 >Javascript教程 >JavaScript中的值类型详细介绍
JavaScript中的值类型详细介绍
摘要:计算机程序的实质很大程度上可以说是机器对各种信息(值)的操作与读写。在JavaScript中,存在多种类型的值,这些值分成两大类:Primi...

计算机程序的实质很大程度上可以说是机器对各种信息(值)的操作与读写。在JavaScript中,存在多种类型的值,这些值分成两大类:Primitive(基本类型)和Object(对象)。

Primitive

JavaScript中Primitive有5种类型:

1.Number。所有的数字,无论是整数还是小数,均为Number类型。

2.String。字符串类型。

3.Boolean。布尔类型,true或者false。

4.null。此类型只有null一个值。

5.undefined。此类型只有undefined一个值。

Object

除了Primitive,JavaScript中其它任何值均为Object(对象)。Object有以下几种:

1.JSON键值对对象。如{“name”:”Bob”, “age”:42}。

2.数组(array)。如[1,4,5,7,9]。

3.函数(function)。如function(){return true;}。在JavaScript中函数有两种存在形式:1. 可执行代码块;2. 类(Class)的构造器(constructor)。无论是以哪种形式存在,函数(function)始终都是对象。

JS自带全局对象

为了方便程序编写,JavaScript自带一个全局对象,该全局对象拥有以下7个成员变量,其类型均为Object:

1.Math。可以通过调用Math对象的方法来完成一系列复杂的数学运算。

2.Number。可以通过访问Number对象的成员变量来获取一些特殊值。

3.Array。数组对象的构造函数。

4.Function。函数对象的构造函数。

5.Date。日期对象的构造函数。

6.RegExp。正则表达式对象的构造函数。

7.Error。错误对象的构造函数。

在进行程序编写时,由于可以直接访问上述7个变量,因此也可以将它们当作全局对象来使用。

Immutable与Mutable

Primitive与Object有一个泾渭分明的特性:所有的Primitive都是Immutable的,所有的Object都是Mutable的。以String类型为例,调用String的方法对其进行编辑后,JavaScript会将编辑后的结果保存在一个新的String对象中,原String对象不会有任何改变:

复制代码 代码如下:

var s = "test";

s.toUpperCase();//return a new String object "TEST"

console.log(s);//"test" -- original String s does not change

实验

在JavaScript中,可以通过使用typeof关键词来获取某个值的类型。

获取数字的类型:

复制代码 代码如下:

var n = 42;

console.log(typeof n);

程序输出结果为number。

获取字符串的类型:

复制代码 代码如下:

var s = "test";

console.log(typeof s);

程序输出结果为string。

获取布尔值的类型:

复制代码 代码如下:

var b = true;

console.log(typeof b);

程序输出结果为boolean。

获取null的类型:

复制代码 代码如下:

var x = null;

console.log(typeof x);

程序本应输出null,但实际上却输出object。原因在于,当对null值使用typeof操作时,程序将返回object:这是自JavaScript第一个版本以来就存在的一个bug。在ECMAScript标准的制定过程中,就是否修复这个bug存在过一些有趣的争论:http://wiki.ecmascript.org/doku.php?id=harmony:typeof_null;最终结论为:修复该bug会给太多的网站带来问题,因此暂不修复。

获取undefined的类型:

复制代码 代码如下:

var y = undefined;

console.log(typeof y);

程序输出结果为undefined。

获取JSON对象的类型:

复制代码 代码如下:

var j = {"name":"Bob", "age":42};

console.log(typeof j);

程序输出结果为object。

获取数组对象的类型:

复制代码 代码如下:

var a = [2,3,5,7,11];

console.log(typeof a);

程序输出结果为object。

获取函数对象的类型:

复制代码 代码如下:

var f = function(){return true;};

console.log(typeof f);

函数对象比较特殊,typeof操作符返回结果为function。

【JavaScript中的值类型详细介绍】相关文章:

javascript操作ul中li的方法

JavaScript对W3C DOM模版的支持情况详解

JavaScript中的setUTCDate()方法使用详解

详解JavaScript中的表单验证

JavaScript基本语法讲解

JavaScript中search()方法的使用

Javascript节点关系实例分析

JavaScript中指定函数名称的相关方法

JavaScript中的Math.LOG2E属性使用详解

Node.js中JavaScript操作MySQL的常用方法整理

精品推荐
分类导航