添加链接
link管理
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接

在javascript中检查对象的空或未定义

在javascript中,如果条件用于检查空值或未定义值,那么Typescript是javascript的一个超集,它有一个额外的功能,即打字、断言,每一段代码都可以在typescripts中工作。

if (expression){ console .log ('Not null')}

表达式必须被评估为真或假 表达式评估为假的值如下:

empty string spaces- ""
undefined
NAN - Not number zero
false.
让我们看一个例子

if ( obj !== 'undefined' && obj !== null ) {  
console.log('Object is Not Null');  

这在javascript和typescripts中都适用。
让我们看一个在类型脚本中类型防护做同样事情的例子

类型守卫null和undefined联合检查

isNullOrUndefined函数被定义为接受对象类型,null类型被添加为带有类型防护语法的联盟类型,并返回布尔值。

function isNullOrUndefined(object: T | undefined | null): object is T { return object !== undefined && object !== null; let obj=null; console.log(isNullOrUndefined(obj)); //false let obj1=123; console.log(isNullOrUndefined(obj1)); //true

使用Optional Chaining和nullish coalescing操作符

ES11中引入了Optional Chainingnullish coalescing操作符,Typescript在3.7版本中也实现了同样的功能。这两个操作都是检查空值和未定义值的。 可选链式操作符?用于检查账户是否为空或未定义,如果账户不是空或未定义,它将返回id,否则返回未定义。

let account={  
id:1}  
let deparmentid=account?.id?  
console.log(deparmentid)  

让我们举个例子来说明nullish凝聚运算符的情况

let account=null; let deparmentId=account??.id console.log(deparmentId)

如果一个帐户不是空的或未定义的,返回id,否则返回帐户。

JQuery空或未定义

在javascript或jquery中检查,使用typeof操作符。
typeOf检查对象,如果对象是未定义或空的,则返回undefined。

if(typeof obj == "undefined"){ console.log('Object is null');

lodash/ramda isNil方法

lodash和rambda提供了isNil方法来检查对象是否被定义。

返回类型true/false - true - 为空值,否则为false
Accets对象来检查空值,让我们看一个例子

let obj;  
console.log(_.isNil(null))//true  
console.log(_.isNil(false))//false  
console.log(_.isNil(obj))//true  
        Android 工程师 @阿里巴巴
       
粉丝