JavaScript的数据类型

JavaScript的两种类型

JavaScript中有两种数据:初始值和对象。对象以外的类型就是初始值类型,初始值类型不包含方法。

JS中共有6中初始值类型:Boolean,Number,String,Null,Undefined,Symbol

Boolean

布尔类型表示truefalse 这两个值的其中一个,可以将布尔型想象成 开/关,或者是/否。

1
2
var boo1 = true;
var boo2 = false;

Number

JavaScript中只有一种数字类型:基于 IEEE754标准的双精度64位二进制格式的值(-(263 -1) 到 263 -1)。数字类型不带小数点就是整数,JavaScript 没有为整数声明一种特殊的类型。除了能表示浮点数以外,还可以带符号的特殊值:Infinity-InfinityNaN(Not a Number)

1
2
var num1 = 32;
var num2 = +Infinity;

String

字符型用于表示文本数据,它由一组16位无符号整型数值表示的“元素”组成。字符型必须用单引号或者双引号括起来。在 JS 中,字符型是不可变的。修改一个字符串的过程是,创建一个改变过的新字符串,再将新字符串赋值给变量。

1
2
var str1 = 'hello, it is me';
var str2 = "hello, it's me";

Null

Null 类型只有一个值:null。

1
var nothing = null;

Undefined

已声明未赋值的变量的值就是 undefined, 也是其所述类型的唯一一个值。

1
2
var testVar;
console.log(testVar); // undefined

Symbol

符号类型是ES6新引入的类型。符号型是唯一的,也是不可变的初始值类型,只能用作对象属性的键,具体可以看这里

1
const mySymbol = Symbol('mySymbol');

对象是什么?

对象不是初始值类型。

对象是一组属性的集合。这些属性以键值对的形式保存。属性可以指向任意类型的数据,包括数值值和对象。

1
2
3
4
5
6
7
var obj = {
key1: 'value',
key2: 'value',
key3: true,
key4: 32,
key5: {}
}

松散类型

JavaScript 是一种松散类型的语言。这意味着你不必声明变量的类型。JavaScript自动替你决定变量类型。同时也意味着,变量类型是可以改变的。示例如下:

我们创建一个变量 car ,并给它赋值一个字符串:

1
var car = 'ford';

然后,我们想要car保存它生产的年份,于是我们将 car 的值改成一个数字:

1
car = 1998;

成功了,在JavaScript中你可以更随心所欲。因为它是松散类型的,我们可以随意改变变量类型。

本文标题:JavaScript的数据类型

文章作者:kinboy

发布时间:2018年12月10日 - 20:23:21

最后更新:2019年07月15日 - 18:05:10

原始链接:http://kinboyw.github.io/2018/12/10/JavaScript的数据类型/

许可协议: 署名-非商业性使用-禁止演绎 4.0 国际 转载请保留原文链接及作者。

------ Passage Ending ------