Javascript数据类型

前言

JavaScript 是一种弱类型或者说动态语言。在程序运行过程中,类型会被自动确定,意味着可以用一个变量保存不同类型的数据。但是这样不利于我们代码的编写,导致整个项目的复杂,不利于后期的维护。

数据类型

  • 原始类型
    • Boolean
    • Null
    • Undefined
    • Number
    • BigInt
    • String
    • Symbol
    • BigInt
  • Object

布尔类型

布尔可以有两个值:true和false。

Null类型

Null用来表示尚未存在的对象,常用来表示函数企图返回一个不存在的对象。Null表示“没有对象”,即该处不应该有值。

1
typeof null    // "object"
2
null === undefined // false
3
null  == undefined // true
4
null === null // true
5
null == null // true
6
!null //true
7
isNaN(1 + null) // false

Undefined

一个没有被赋值的变量会有个默认值 undefined.

  1. 变量被声明了,但没有赋值时,就等于undefined。
  2. 调用函数时,应该提供的参数没有提供,该参数就等于undefined。
  3. 对象没有赋值的属性,该属性的值为undefined。
  4. 函数没有返回值时,默认返回undefined。
1
typeof undefined    // "undefined"

Object

JavaScript 中的所有事物都是对象:字符串、数值、数组、函数…
对象只是一种特殊的数据,对象拥有属性和方法。

通过构造函数创建对象

1
obj = new Object(value);
2
3
// 如果 value 的值是 null 或 undefined,将会创建并返回一个空对象,否则将返回一个与 value 对应类型的对象。

使用函数来构造对象

1
function person(firstname,lastname,age,eyecolor)
2
{
3
    this.firstname=firstname;
4
    this.lastname=lastname;
5
    this.age=age;
6
    this.eyecolor=eyecolor;
7
}

原始数据类型与引用数据类型

在 JavaScript 中除了原始类型,其他的都是引用类型。原始类型存储的是值,引用类型存储的是地址。当创建了一个对象的时候,计算机会在内存中开辟一个空间用来存放值,这个空间会永远一个地址。
原始类型是不可变的,只有对象是可变的。


本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!