深入了解JavaScript数据类型的对象类型

JavaScript 数据类型包括原始类型和对象类型。

上次我们谈到了原始类型。这一次,我们再来详细讲解下对象类型,它是可变数据类型。

对象类型

对象类型是可变的,与不可变的原始类型不同。

对象类型由多个变量或原始类型的值等组成,这些值本身可以在以后更改。换句话说,它是一种可以自定义的数据类型。

所有非原始类型的数据都属于对象类型,因此有多种类型。

  • 对象(Object)

  • 数组(Array)

  • 函数(Function)

  • 日期(Date)

  • 正则表达式(RegExp)

  • 映射(Map)和弱映射(Weak Map)

  • 集合(Set)和弱集合(Weak Set)等

其中,我们将解释“对象”、“数组”、“函数”和“日期”的属性,它们是对象类型的基础。

对象(Object)

一个对象由一个盒子(一个容器)和盒子中的内容组成。

为了知道盒子里装的是什么样的东西,在容器上加上名字,并在需要时将其取出。

盒子里的东西即内容物称为“属性(property)”。属性由名称(key)和值(value组成。

请查看示例代码:

const obj = {
  color: 'red',
  shape: 'circle',
  size: 50, 
}; 

console.log(obj); // {color: "red", shape: "circle", size: 50}
console.log(obj.color); // "red"
console.log(obj.shape); // "circle"
console.log(obj.size); // 50

指定对象名称以引用对象的全部内容。

访问属性时,通常在对象名称和属性名称之间写一个点,称为“点运算符” 。

深入了解JavaScript数据类型的对象类型

数组(Array)

数组与对象一样,用于汇总多个数据并一次处理。数组中存储的元素的顺序是固定的,与对象的不同之处在于它们是从 0 开始的一系列整数,将数组的元素括在方括号[]中。

const array = ['red', 'green', 'yellow']; 

console.log(array[0]); // "red"
console.log(array[3]); // undefined
console.log(array.length); // 3

在大括号[]中从0开始索引编号。

这个索引号是按照它存储的顺序分配的,所以如果你指定它,你可以检索array[0]第一个存储的索引号:’red’

上面的数组包含3个元素,存储在最后面的元素的索引编号为2。

因此,即使指定array[3],也会判别为不存在的值,返回undefined。

还可以使用.length检查数组中的元素。

在上述情况下,因为存储了3个要素,所以可以确认返回3。

函数(Function)

函数(Function)是很重要的代码的集合。可以说函数(Function)在编程中一定会被使用。

function greeting () {
  console.log('hello');
} 

greeting(); // "hello"

在{}中写下处理,只需调用greeting()即可执行函数中的处理。使用这样的语法定义函数称为“函数声明”。

除此之外还有多个描述方法,但这里我们使用上面的描述方法作为函数类型的基础。

日期(Date)

顾名思义,日期和时间类型(Date)主要用于处理日期和时间。

const now = new Date(); 

console.log(now.getFullYear()); // 2022
console.log(now.getMonth()); // 9
console.log(now.getHours()); // 9
console.log(now.getMinutes()); // 30

new Date()可以通过写得到当前时间,现在赋值给变量。

通过new Date()可以取得当前时间,将其代入变量now。

然后,使用方法分别获取“年”、“月”、“时”、“分”。

这里的方法是, getFullYear(), getMonth(), 。getHours()getMinutes()

您可以像这样获取日期数据并将其更改为任何格式。

结语

这一次,我们深入了解了对象类型,它是 JavaScript 的数据类型之一。

正如所有非原始数据都属于对象类型一样,JavaScript 处理的大部分数据都是对象类型。

对象类型的特点是能够使用属性、方法等更改和引用数据。