gpt4 book ai didi

javascript - JavaScript 数据类型和对象类型的混淆

转载 作者:行者123 更新时间:2023-12-02 14:15:12 25 4
gpt4 key购买 nike

我在 W3school 看到了以下言论。

enter image description here

我是java初学者,所以javascript中的数据类型和对象类型让我很困惑。我有几个问题:

  1. “对象”数据类型由什么组成?
  2. 数据类型“object”和对象类型“Object”有什么区别?
  3. 当我尝试通过输入 typeof null 找出“null”的数据类型时,我的 IDE 告诉我它是“object”类型,而不是“null”类型,这是符合我的预期。

最佳答案

typeof 将始终返回原始类型。 (“字符串”、“数字”、“对象”等)。

对象是一种基本类型结构,是存储为一系列名称-值对的基本数据类型的无序列表。

Object 是对象原语的构造函数。

var test = {};
console.log(typeof test); // object
console.log(test instanceof object) // false
console.log(test instanceof Object) // true

据此,要检查日期或数组,使用typeof将返回object:

typeof [];           // object
typeof new Date(); // object

要测试该对象实际上是日期还是数组,可以使用 instanceof:

[] instanceof Array;          // true
new Date() instanceof Date; // true

关于 typeof null,根据the MDN,这是 ECMAScript 中的一个错误。并且应该为空。该错误的详细信息参见 this answerA fix已通过选择加入提出,遗憾的是,由于代码使用此特定“错误”来测试 null,因此更改被拒绝。

关于javascript - JavaScript 数据类型和对象类型的混淆,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39095697/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com