JavaScript 数据类型

JavaScript提供了不同的数据类型来保存不同类型的值。JavaScript中有两种基础数据类型。

  1. 原始数据类型
  2. 非原始(参考)数据类型

JavaScript 是一种弱类型或者说动态语言。这意味着你不用提前声明变量的类型,在程序运行过程中,类型会被自动确定。这也意味着你可以使用同一个变量保存不同类型的数据:

var foo = 42;       // 给变量赋值数字
foo = "bar";        // 给变量赋值字符串
foo = true;         // 给变量赋值布尔值

JavaScript基本数据类型

JavaScript中有七种原始数据类型。

数据类型描述
String字符串类型,如: “hello”。
Number数字类型,标准的双精度 64 位二进制格式的值。JavaScript没有为整数给出一种特定的类型。除了能够表示浮点数外,还有一些带符号的值:+Infinity-Infinity 和 NaN (非数值,Not-a-Number)。
Boolean布尔类型,表示一个逻辑实体,可以有两个值:true 和 false
Bigint一种数字类型的数据,可以表示任意精度的整数。
Undefined未定义类型,一个没有被赋值的变量会有个默认值 undefined
Null表示空或者没有值。
SymbolES6 引入的一种新数据类型,表示独一无二的值。

JavaScript非原始数据类型

数据类型描述
Object对象类型,通过对象实例可以访问其属性方法。
Array数组类型,存储一系列相似的值。
RegExp正则表达式类型,定义正则表达式。

JavaScript 字符串

字符串是存储字符(比如 “Bill Gates”)的变量。

字符串可以是引号中的任意文本。您可以使用单引号或双引号:

var carname="Volvo XC60";
var carname='Volvo XC60';

您可以在字符串中使用引号,只要不匹配包围字符串的引号即可:

var answer="It's alright";
var answer="He is called 'Johnny'";
var answer='He is called "Johnny"';

亲自试试

您将在本教程的高级部分学到更多关于字符串的知识。


JavaScript 数字

JavaScript 只有一种数字类型。数字可以带小数点,也可以不带:

var x1=34.00;      //使用小数点来写
var x2=34;         //不使用小数点来写

极大或极小的数字可以通过科学(指数)计数法来书写:

var y=123e5;      // 12300000
var z=123e-5;     // 0.00123

亲自试试

您将在本教程的高级部分学到更多关于数字的知识。


JavaScript 布尔

布尔(逻辑)只能有两个值:true 或 false。

var x=true;
var y=false;

布尔常用在条件测试中。您将在本教程稍后的章节中学到更多关于条件测试的知识。


JavaScript 数组

下面的代码创建名为 cars 的数组:

var cars=new Array();
cars[0]="Saab";
cars[1]="Volvo";
cars[2]="BMW";

或者 (condensed array):

var cars=new Array("Saab","Volvo","BMW");

或者 (literal array):

var cars=["Saab","Volvo","BMW"]; 

亲自试试

数组下标是基于零的,所以第一个项目是 [0],第二个是 [1],以此类推。

您将在本教程稍后的章节中学到更多关于数组的知识。


JavaScript 对象

对象由花括号分隔。在括号内部,对象的属性以名称和值对的形式 (name : value) 来定义。属性由逗号分隔:

var person={firstname:"John", lastname:"Doe", id:5566};

上面例子中的对象 (person) 有三个属性:firstname、lastname 以及 id。

空格和折行无关紧要。声明可横跨多行:

var person={
    firstname : "John",
    lastname  : "Doe",
    id        :  5566
};

对象属性有两种寻址方式:

name=person.lastname; 
name=person["lastname"]; 

亲自试试

您将在本教程稍后的章节中学到更多关于对象的知识。


Undefined 和 Null

Undefined 这个值表示变量不含有值。

可以通过将变量的值设置为 null 来清空变量。


示例代码

cars=null;
person=null; 

亲自试试


声明变量类型

当您声明新变量时,可以使用关键词 “new” 来声明其类型:

var carname=new String;
var x=      new Number;
var y=      new Boolean;
var cars=   new Array;
var person= new Object;

JavaScript 变量均为对象。当您声明一个变量时,就创建了一个新的对象。


相关