2016 - 2024

感恩一路有你

null和undefined相等吗 null和undefined有什么异同点?

浏览量:2414 时间:2021-03-14 18:10:56 作者:admin

null和undefined有什么异同点?

Undefined表示变量声明但未初始化时的值。Null表示它打算保存对象,但对象的值尚未保存。逻辑上,空值表示空对象指针。JavaScript(ECMAScript标准)中有五种基本类型:未定义、null、Boolean、number、string和复杂类型对象。可以看到null和undefined属于不同的类型。未初始化的定义值按typeof检测为“未定义”(字符串),而空值按typeof检测为“对象”(字符串)。不建议在任何时候将变量显式设置为未定义,但如果保存对象的变量没有真正保存对象,则应将其设置为null。实际上,未定义的值是从空值派生的。ECMAScript标准规定相等性测试应返回true

当调用频率较高时,会触发更高级别的JIT。然后更高级别的JIT有一个bug,结果是错误的,所以先是false,然后是true。

为什么typeof null ===

未定义值和未定义值未定义,null是特殊对象,Nan(不是数字)是特殊数字,表示非数字。(1) Undefined等于null;(2)Nan不等于任何值,也不等于它本身。

undefined等于null么?

在JavaScript中,Undefined、Nan和infinity是全局对象窗口的属性。所以它们可以被赋值,但是由于它们的内部属性[[writable

为false,赋值实际上是无效的。认证:

Object.getOwnPropertyDescriptor(window,“undefined”)//result://object{value:undefined,writeable:false,enumerable:false,configurable:false}

可以看出undefined确实是window的一个属性,不能写入。

Null与true和false一样,是一个文字量和JavaScript的保留字。换句话说,它们类似于123和“foobar”,不能赋值。

为什么undefined,NaN和Infinity可以被赋值,而null不可以?

空表示空。对于指针,这意味着它不指向任何有意义的内存地址。未定义的意思是未定义。这意味着根本不存在这样的变量。

null和undefined相等吗 描述null和undefined的区别 null和undefined 区别 面试

版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。