使用具有“未定义”属性的评估时出现问题

时间:2019-04-10 17:04:59

标签: javascript

我正在使用带有undefined的评估来检查是否创建了我的组件。当我传递必须警告为“ false”的日期时,警告会以正确的方式显示它,因此为“ false”。但是当我传递必须返回true的日期时,我得到一个错误:'未定义不是对象'(评估'mark ['2019-04-15']。dots')。为什么此语句仅对定义的语句起作用?

alert(typeof mark['2019-04-15'].dots === "undefined");

1 个答案:

答案 0 :(得分:0)

mark['2019-04-15']undefined,尝试访问该属性点会引起您的错误。

您可以例如检查mark['2019-04-15']是否首先具有值。

if (mark['2019-04-15']) {
  alert(typeof mark['2019-04-15'].dots === "undefined");
}