JavaScript中的基本数据类型

如果你是一名IT前端人员,怎么会不懂JavaScript的美?如果你是一名前端在学人员,接触JavaScript后,怎么会不明白JavaScript中基本数据类型?大家都知道计算机能够存储和处理数据。

JavaScript中有5种基本数据类型:number、sring、boolean、undefined和null。
在介绍js的基本数据类型前,有必要提到两个关键字var和typeof。那什么是关键字?

关键字
系统自己使用的或者以后可能会使用的有特殊用途的字符。

使用var关键字时,与之紧密相连的是变量这一概念。“变量”一词对于大家应该都不陌生,在数学中表示函数关系的变量,那么在js语言中变量是何方神圣?

变量

变量是存储信息的容器。

JavaScript中用var关键字来定义变量,无法确定变量一定会存储什么值,也就不知道变量到底会是什么类型,而且变量的类型可以随时改变。这就是JavaScript是松散类型的来由,所谓松散类型就是可以用来保存任何类型的数据。

由于js中的变量是松散类型的,所以它提供了一种检测当前变量的数据类型的方法,也就是typeof关键字。
通过typeof关键字,对这5种数据类型会返回下面的值(以字符串形式显示):
number、string、boolean、undefined和object(后期会对object有根深的了解)。

接下来就分别看下5种基本数据类型:

number

这种类型用来表示整数和浮点数值,还有一种特殊的数值,即NaN(非数值 not a number)。

var b = 2 / 0 ;
console.log(typeof(b)); //输出的结果为NaN

string

string用于表示由零、数字或字符组成的字符序列,即字符串。字符串可以由英文单引号'或双引号"表示。

var year = "2017年";
console.log(typeof(year)); // 输出的结果为string
var thing = "abcd12345@?";
console.log(typeof(thing)); // 输出的结果为string

boolean

该类型只有两个字面值:true和false。这两个值与数字值不要混为一谈,因此true不一定等于1,而false也不一定等于0。虽然Boolean类型的字面值只有两个,但JavaScript中所有类型的值都有与这两个Boolean值等价的值。

var a = 5;
var b = 3;
console.log(typeof(a > b)); // 输出结果为boolean

下表为任何数据类型与布尔值的等价值:

数据类型 转换为true的值 转换为false的值

数据类型转换为true的值转换为false的值
booleantruefalse
string任何非空的字符串""(空字符串)
number任何非0数值(包括无穷大)0和NaN
object任何对象null
undefined!undefinedundefined

undefined

在使用var声明变量但未对其加以赋值时,这个变量的值就是undefined。

var a ;
console.log(typeof(a)); //输出结果为undefined

null

从逻辑角度来看,null值表示一个空对象,故使用typeof关键字检测null时会返回object。

var cat = null;
console.log(typeof(cat)); // 输出结果为object

这里需要注意undefined和null,实际上,undefined值是派生自null值的。尽管null和undefined有这样的关系,但它们的用途完全不同。如果变量旨在保存一个对象但还没有保存对象时,可以声明变量并赋予变量初始化的null值。

相关推荐