JavaScript 的 null 和 undefined 判断

JavaScript 的 null 和 undefined 判断null 和 undefined 在 JavaScript 是最常见的空问题 比如说在 Java 中 如果你需要使用一个字符串 string 之前 你必须要先定义这个字符串 你可以给字符串赋 null 或者初始化一些字符 但是你必须要定义

欢迎大家来到IT世界,在知识的湖畔探索吧!

null 和 undefined 在 JavaScript 是最常见的空问题。

null 和 undefined 的定义

JavaScript 的最初版本是这样区分的:

  • null是一个表示”无”的对象,转为数值时为 0;
  • undefined是一个表示”无”的原始值,转为数值时为NaN。

下图对上面的 2 个概念进行了对比:

JavaScript 的 null 和 undefined 判断



欢迎大家来到IT世界,在知识的湖畔探索吧!

为什么会出现这个问题

这个和 JavaScript 的语言特性有关。

在最开始的时候,JavaScript 通常会被定义为是一个解释型语言。这个语言的特点是不需要编译,直接解释使用。

同时 JavaScript 为了增强语言的灵活性,又被设计为弱类型语言。

换句话说,在上面的定义的 null 的时候,是可以直接对应整数类型的,这个就对代码在执行的时候带来很多困惑。

针对编译类型和强类型语言来说,这个就非常头疼。

比如说在 Java 中,如果你需要使用一个字符串 string 之前,你必须要先定义这个字符串,你可以给字符串赋 null ,或者初始化一些字符,但是你必须要定义。

否则在后面引用的时候就会报错,JavaScript 就不需要这样,直接用就行,这个时候,如果你压根就没有定义一个变量,然后就直接用,那么就会出现 undefined 的错误。

在强类型语言中,如果你定义变量为字符串,那么你就只能往这个变量里面存字符串,如果你存其他类型的话,编译器会报错。JavaScript 会尝试自动给你类型转换,这个就带来不少困惑的问题,比如说在变量中存的 1 ,这个可能是整数 1 ,也可能是布尔类型。

如何判断

可以使用 _.isNil() 函数来进行判断。

检查 value 是否是 null 或者 undefined。

需要注意的是,如果你的输入值是 ” 的话,这个函数是没有办法判断的。

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://itzsg.com/121673.html

(0)
上一篇 16分钟前
下一篇 2025年 4月 22日 下午3:30

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们YX

mu99908888

在线咨询: 微信交谈

邮件:itzsgw@126.com

工作时间:时刻准备着!

关注微信