有没有办法检查typescript中是否有未定义的对象?
我曾读过一期文章,其中说使用有没有办法检查typescript中是否有未定义的对象?,typescript,Typescript,我曾读过一期文章,其中说使用T?作为查看类型是否为null |未定义的方法没有达成共识,这是一种耻辱。我还阅读了不使用null的建议,因此我在tsconfig中设置了“strictNullChecks”:true,,但通过下面的代码,TS显示blah可以是blah或undefined类型,因此我必须在使用属性之前检查它是否未定义。我知道,T?是不存在的(但愿它存在),但是是否有其他内置的方法来执行此检查,而不必在我的所有项目中的帮助器类中编写某些内容 interface Blah { m
T?
作为查看类型是否为null |未定义
的方法没有达成共识,这是一种耻辱。我还阅读了不使用null的建议,因此我在tsconfig中设置了“strictNullChecks”:true,
,但通过下面的代码,TS显示blah
可以是blah
或undefined
类型,因此我必须在使用属性之前检查它是否未定义。我知道,T?
是不存在的(但愿它存在),但是是否有其他内置的方法来执行此检查,而不必在我的所有项目中的帮助器类中编写某些内容
interface Blah {
middleInitial?: string;
age?: number;
}
class Student {
fullName: string;
constructor(public firstName: string, public lastName: string, public blah?: Blah) {
var middleInitial = blah == undefined ? "" : blah.middleInitial;
this.fullName = firstName + " " + middleInitial + " " + lastName;
}
}
您只需在构造函数中这样写一行:
var middleInitial = (blah && blah.middleInitial) || "";
用同样的方法检查它在JS中是否未定义:
typeof blah==“未定义”