在迭代数组coffee脚本时检查undefined

时间:2019-03-21 17:58:25

标签: javascript coffeescript

我正在遍历数组,并且在CoffeeScript中进行迭代时遇到private Integer getIntWithNullCheck(ResultSet rset, String columnName) { try { Integer value = rset.getInt(columnName); return rset.wasNull() ? null : value; } catch (Exception e) { return null; } } 变量错误。我不太确定如何在CoffeeScript中遍历数组时检查未定义。

请在下面找到我的代码。

undefined

2 个答案:

答案 0 :(得分:1)

我猜想Program.flatPercentageDiscountByMajorClass[i]undefined,尝试访问其上的majorClass属性会引发错误。

您可以在咖啡脚本中使用existential operator来避免这种情况。

if typeof Program.flatPercentageDiscountByMajorClass[i]?.majorClass == 'undefined'  
// The existential operator goes before the dot  ------^ 

其他一些观察结果

var未在coffeescript中使用。我真的不确定您要通过此循环实现什么。 break意味着您将只执行一次迭代-这是否只是出于调试目的?

您应该研究loops & comprehensions以便遍历coffeescript中的数组,而不要使用while循环。

答案 1 :(得分:1)

要检查咖啡脚本中的undefined元素,您可以使用像这样的三元运算符。

Flag = if typeof Program.flatPercentageDiscountByMajorClass[i].majorClass != 'undefined' then false else true