undefined和null javascript javasc

javascript中null和undefined的区别

1.类型不一样:

console.log(typeOf undefined);//undefined

console.log(typeOf null);//object

2.转化为值时不一样:undefined为NaN ,null为0

console.log(Number(undefined));//NaN

console.log(Number(10+undefined));//NaN

console.log(Number(null));//0

console.log(Number(10+null));//10

3.undefined===null;//false

undefined==null;//true

扩展资料:

undefined,一个特殊值,通常用于指示变量尚未赋值。在高级程序设计语言设计应用程序时,用于指示变量尚未用单等号进行赋值(常量未定义)。

NULL是在计算中具有保留的值,用于指示指针不引用有效对象。程序通常使用空指针来表示条件,例如未知长度列表的结尾或未执行某些操作; 这种空指针的使用可以与可空类型和选项类型中的Nothing值进行比较。

空指针不应与未初始化的指针混淆:保证空指针与指向有效对象的任何指针进行比较。但是,根据语言和实现,未初始化的指针可能没有任何此类保证。它可能与其他有效指针相等; 或者它可能比较等于空指针。它可能在不同的时间做两件事。

参考资料:百度百科:null

百度百科:undefined

前端面试题总结【27】:null和undefined的区别

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

当声明的变量还未被初始化时,变量的默认值为undefined
null用来表示尚未存在的对象,常用来表示函数企图返回一个不存在的对象

undefined表示 “缺少值”,就是此处应该有一个值,但是还没有定义。典型用法是:

null表示“没有对象”,即该处不应该有值。典型用法是:

null or undefined什么意思

Undefined类型只有一个值,即undefined。当声明的变量还未被初始化时,变量的默认值为undefined。
Null类型也只有一个值,即null。null用来表示尚未存在的对象,常用来表示函数企图返回一个不存在的对象。

为什么JS要分undefined和null,为不和其他语言一样都是一种类型代表(null)

这个是历史原因造成的,就是js的设计者觉得只用null来表示无,会使一些代码的错误难于被发现,所以又整出个undefined,后来证明这纯粹是他想多了。目前两者的用法基本上没有太大区别,null主要用于表示“没有对象”或者“空对象”,undefined主要用于表示“未定义的值”,相当于NaN。

null和undefined的区别

① null类型数据是未定义的(原本就不存在的东西),undefined类型数据是定义后未赋值;
② let a = 0,aa;
alert(b);-》b is not defined.(相当于null,因为b原本不存在的,突然要打印b,当然是null结果了);
alert(aa); 虽然aa变量经过了定义,但是没有初始化,未赋值,所以结果是undefined。

undefined和null的区别

undefined表示变量声明但未初始化时的值,
null表示准备用来保存对象,还没有真正保存对象的值。从逻辑角度看,null值表示一个空对象指针。
JavaScript(ECMAScript标准)里共有5种基本类型:Undefined, Null, Boolean, Number, String,和一种复杂类型Object。可以看到null和undefined分属不同的类型,未初始化定义的值用typeof检测出来是“undefined“(字符串),而null值用typeof检测出来是“object“(字符串)。
任何时候都不建议显式的设置一个变量为undefined,但是如果保存对象的变量还没有真正保存对象,应该设置成null。

undefined是什么意思

undefined通常用于指示变量尚未赋值。在高级程序设计语言设计应用程序时,用于指示变量尚未用单等号进行赋值(常量未定义)。

undefined表示“未定义”,一个特殊值,通常用于指示变量尚未赋值。对未定义值的引用返回特殊值“未定义”。类型定义代码 typeof(undefined) 返回未定义字符串。当将“未定义”转换为字符串时,它转换为空字符串。

“未定义”值与特殊值null(空)相似。事实上,当使用相等运算符对null(空)和“未定义”进行比较时,它们的比较结果为相等。

扩展资料

null的类型用来表示一个变量没有任何数值,而undefined是指变量没有定义任何值。 

在JavaScript中,关键字null表示空值的意思,它表示对象为空,或者变量没有引用任何对象。如果当一个变量的值为null,则表明它的值不是有效的对象、数组、数值、字符串和布尔型等。如果使用alert(typeof(null))来检测null值的类型,则返回object,说明它是一个对象类型。

而undefined与null不同,它表示无值的意思,并且具有独一无二的类型,它区别任何对象、数组、数值、字符串和布尔型。alert(typeof(undefined))的返回值为undefined。

同样是空值,null和undefined有什么异同你知道吗

JavaScript有5种简单数据类型(基本数据类型)和1种复杂书数据类型;

以下比较一下两种表示空值的数据类型, null 和 undefined 。

null 表示一个特殊值,常用来描述 “空值”

对null执行typeof操作,结果返回字符串“object“ ,null可以认为是一个特殊的对象值,含义是非对象。

从逻辑上看, null 表示一个空对象指针。

undefined 也被用来表示值的空缺,表示 未定义 , undefined 值表示更深层次的“空值“.所有不存在的值,都表示为 undefined 。

它是变量的一种取值,表明变量没有初始化,如果声明了一个变量,但未对其进行初始化时,则该变量的类型就是 undefined ,如下:

不对变量进行初始化和将变量初始化为 undefined ,其结果是一致的,如下:

未定义的变量和定义但未初始化的变量的类型都是 undefined ,

null和undefined 区别 面试

null和undefined 区别为:undefined是表示变量声明过但并未赋过值,它是所有未赋值变量默认值;null表示一个变量将来可能指向一个对象,一般用于主动释放指向对象的引用。

历史:

这与JavaScript的历史有关。1995年JavaScript诞生时,最初像Java一样,只设置了null作为表示“无“的值。

根据C语言的传统,null被设计成可以自动转为0。

但是,JavaScript的设计者Brendan Eich,觉得这样做还不够,有两个原因。

首先,null像在Java里一样,被当成一个对象。但是,JavaScript的数据类型分成原始类型(primitive)和合成类型(complex)两大类,Brendan Eich觉得表示“无“的值最好不是对象。

其次,JavaScript的最初版本没有包括错误处理机制,发生数据类型不匹配时,往往是自动转换类型或者默默地失败。Brendan Eich觉得,如果null自动转为0,很不容易发现错误。

因此,Brendan Eich又设计了一个undefined

undefined是什么意思

不少的朋友在浏览计算机专业论坛过程中,经常会发现undefined这个词组,究竟undefined代表着什么意思,它都有什么作用,下面让我们一起去了解吧。

简要回答

undefined是个计算机程序语句,一般使用于指示变量尚未赋值。用于指示变量尚未用单等号进行赋值。

详细内容

undefined表示“未定义”,一个特殊值,通常用于指示变量尚未赋值。对未定义值的引用返回特殊值“未定义”。类型定义代码 typeof(undefined) 返回未定义字符串。当将“未定义”转换为字符串时,它转换为空字符串。

“未定义”值与特殊值null(空)相似。事实上,当使用相等运算符对null(空)和“未定义”进行比较时,它们的比较结果为相等。

null的类型是一个对象,用来表示一个变量没有任何数值,而undefined是指变量没有定义任何值。

undefined与null不同,它表示无值的意思,并且具有独一无二的类型,它区别任何对象、数组、数值、字符串和布尔型。alert(typeof(undefined))的返回值为undefined。

未定义数据类型的值也只有一个。那就是Undefined。因此也被称为Undefined型。它主要用于尚未分配值的变量。使用未定义型变量可以检查自己是否已经定义某个变量。