JavaScript中的一切都是对象!

来源:baijiahao.baidu.com 更新时间:2023-05-25 21:55

介绍

我们将探讨JavaScript的基本基础之一,即对象,并具体讨论为什么JavaScript中的所有内容都是对象,或者确实如果是?

背景

JavaScript对值进行任意区分:

原始值和对象。

原始值包括布尔值,数字,字符串,null和undefined。

虽然JavaScript中的其他所有内容都被认为是一个对象,这意味着窗口,JSON,Math甚至函数和数组都是对象。本文后面有关函数和数组的更多信息。

对象和原始值之间的差异

对象和原始值之间的主要区别之一是它们的比较方式。

通过引用比较对象。

所有基元都按值进行比较。

对象属性是可变的,即它们可以被改变。可以添加,删除或更改对象的属性。

原始值类型属性是不可变的,即它们不能被更改。

JavaScript中的一切都是对象吗?

如前所述,JavaScript中的值类型分为原始值和对象。

对象还包括数组,函数,内置对象和用户定义的对象。但有趣的是,原语有时也像对象一样!

我们先来看看数组。

数组确实是特殊对象,其中属性被索引,这使我们能够使用索引访问它们。

我们来看看函数。

所以功能确实是对象。

现在,有时原始值也像对象一样。

这可以用JavaScript中的string值类型来解释。

所以这就是它的工作原理。

当我们访问length属性时stringVariable,它将被转换为Object并length访问该属性。访问属性后,它将返回原始值string。

这就是为什么JavaScript中几乎所有东西都是对象!