gpt4 book ai didi

javascript - Typeof 运算符返回一个非 null 的字符串

转载 作者:行者123 更新时间:2023-11-27 23:45:19 24 4
gpt4 key购买 nike

我是 Js 新手。现在我有了这段代码

var name = null;
console.log(typeof name);

但是结果是一个字符串?这是为什么?为什么不为空?

最佳答案

在 JavaScript 中,null 的数据类型实际上是一个对象,而不是实际的 null

因此,当您调用 typeof 时,它将返回一个“undefined”(或“null”)字符串,而不是您期望的 null 值。

您可以在 official specifications 上阅读有关 JavaScript 如何处理它的更多信息。 .

JavaScript 值最初表示为标签和值,对象的标签为 0,null 表示为标准空指针。这导致了 typeof 为 null 返回 0 标记的问题。

因此,该语句将始终被视为 true:

 typeof null === 'object';

对此有一个提议的修复方案,但它被拒绝了,因为它会导致使用此“技巧”验证空值的现有代码出现问题。

关于javascript - Typeof 运算符返回一个非 null 的字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33256037/

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