[英]“Cannot read property .. of null” after checking for undefined object
我有一个对象需要检查是否已定义。 另外,我还想检查该对象的属性是true还是false。
所以我想要的是
if ((typeof myVar !== 'undefined') && (myVar.isMale === false)) {
// Do something 1
}
else{
// Do something 2
}
但是这种逻辑给我错误
Uncaught TypeError: Cannot read property 'isMale' of null
处理这种情况的最佳登录方式是什么?
谢谢 !
您需要通过排除来进一步测试:
if (typeof myVar != 'undefined' && myVar && myVar.isMale === false) {
或包含:
if (typeof myVar == 'object' && mVar && myVar.isMale === false) {
但是有些对象返回带有typeof测试的“对象”以外的值(例如,宿主对象可能和函数对象一样)。
或通过显式转换:
if (typeof myVar != 'undefined' && Object(myVar).isMale === false) {
附加的&& myVar
测试是捕获通过typeof测试的NaN和null。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.