推广 热搜: 二手  净利2626万  北京  二手车  SMM废铜现货交易日评  企业  全国  汽车  三星  公司 

JS中null和undefined的不同之处

   日期:2024-10-10     来源:www.arimat40.com    作者:二手网    浏览:796    评论:0    
核心提示:[db:简介]
前言

在Javascript中,null和undefined是两个容易见到的数据种类,但一直在用时因为对两者不同不清而致使错误,今天就让大家一块儿看看这两类型型有什么区别。

概念

第一让大家来看看两者的概念: null是Javascript中的一个特殊值,表示空值或无值。当大家想要表示某个变量不包括任何值时,就能将它设置为null。 undefined是Javascript中的另一种特殊值,表示未概念的值。当大家声明一个变量但没给它赋值时,该变量的值就是undefined。

异同点

相同点:

undefined和null被转换为布尔值的时候,两者都为false

undefined==null,结果为true都表示一个空值,两者判断值相等上是一样的

尽管null和undefined都表示无值,但它们之间还是有一些不同的。

不同的地方:

null表示一个空对象指针,而undefined表示一个未概念的值。

当大家声明一个变量但没给它赋值时,该变量的值就是undefined。当大家想要明确地表示某个变量不包括任何值时,就能将它设置为null。

假如大家用typeof运算符检查一个null值时,返回的结果是object。而假如检查一个未声明的变量时,返回的结果是undefined。

undefined不是关键词,而null是关键词

undefined本质上是window的一个属性,而null是一个对象

下面就让大家来结合一些小小的例子来进行理解:

letfirval=null;letsecval;console.log(firval==secval);//输出:trueconsole.log(firval===secval);//输出:falseconsole.log(firval);//输出:nullconsole.log(secval);//输出:undefinedconsole.log(typeoffirval);//输出:objectconsole.log(typeofsecval);//输出:undefined

在上面的示例中,大家声明了两个变量firval和secval。firval的值被设置为null,而secval没被赋值,因此它的值是undefined。当大家用console.log()函数打印这两个变量时,分别输出了null和undefined。当大家用typeof运算符检查这两个变量的种类时,分别输出了object和undefined,同时应该注意null与undefined本质上是不同,当用双等时输出为true相信大伙应该都知道一些,没错,由于在 Javascript 里,双等号判断相等时会进行隐式种类转换,所以是不严格的。

实质应用

在实质的开发中,大家常常需要用null和undefined在某些特殊的情景。比如,当大家从服务器获得数据时,假如数据没有,大家或许会将返回值设置为null或undefined。如此做可以帮助大家更好地处置数据并防止出现错误。

以下便是一个null应用场景:

functiongetData(){letdata=null;//假如数据没有,返回nullif(!data){returnnull;}//处置数据//...//假如处置成功,返回处置结果returnresult;}

在上面的示例中,大家概念了一个名为getData的函数,用于获得数据并处置它。假如数据没有,大家将返回值设置为null。不然,大家将处置数据并返回处置结果。

此外,null还有一个前端职员都熟知有哪些用途:作为对象原型链的终点

对于undefined有哪些用途,这里大致列举以下几种:

假如变量声明了,但没赋值,它就等于undefined 。

函数中的参数没给时,该参数就等于undefined 。

对象没进行赋值,该属性的值为undefined。

当函数没返回值时,默认返回undefined。

总结

在本文中,大家简单探讨了Javascript中的null和undefined种类,需要记住的是,null表示一个空对象指针,而undefined表示一个未概念的值。当大家想要明确地表示某个变量不包括任何值时,就能将它设置为null。而当大家声明一个变量但没给它赋值时,该变量的值就是undefined。

补:

1.JS 中怎么分辨 undefined

Javascript 中有两个特殊数据种类:undefined 和 null,下节介绍了 null 的判断,下面议谈 undefined 的判断。

以下是不正确的使用方法:

varexp=undefined;if(exp==undefined){alert(undefined);}

exp 为 null 时,也会得到与 undefined 相同的结果,虽然 null 和 undefined 不同。注意:要同时判断 undefined 和 null 时可用本法。

varexp=undefined;if(typeof(exp)==undefined){alert(undefined);}

以下是正确的使用方法:

varexp=undefined;if(typeof(exp)==undefined){alert(undefined);}2.JS 中怎么分辨 null

以下是不正确的使用方法:

varexp=null;if(exp==null){alert(isnull);}

exp 为 undefined 时,也会得到与 null 相同的结果,虽然 null 和 undefined 不同。注意:要同时判断 null 和 undefined 时可用本法。

varexp=null;if(!exp){alert(isnull);}

假如 exp 为 undefined 或者数字零,也会得到与 null 相同的结果,虽然 null 和二者不同。注意:要同时判断 null、undefined 和数字零时可用本法。

varexp=null;if(typeof(exp)==null){alert(isnull);}

为了向下兼容,exp 为 null 时,typeof 总返回 object。

varexp=null;if(isNull(exp)){alert(isnull);}

Javascript 中没 isNull 这个函数。

以下是正确的使用方法:

varexp=null;if(!expamp;amp;typeof(exp)!=undefinedamp;amp;exp!=0){alert(isnull);}

 
标签: JS
打赏
 
更多>同类二手资讯
0相关评论

热门推荐
推荐图文
推荐二手资讯
点击排行
网站首页  |  关于我们  |  联系方式  |  免责声明  |  版权隐私  |  网站地图  |  排名推广  |  广告服务  |  积分换礼  |  网站留言  |  RSS订阅  |  违规举报