什么是Flutter中的NaN,是什么引起的?

时间:2019-02-14 14:04:30

标签: flutter nan

当我运行一个应用程序,其中在容器上绘制了一个包装在Positioned中的图标时,我收到一条错误消息,指出该偏移量(Positioned的 left )使用NaN值。我在网上看了一下,发现NaN的意思不是数字,但我找不到引起它的原因。我的意思是,如果我将数字除以零,则会收到一条错误消息,说我无法将数字除以零,但是NaN是我所理解的常数,如果我将数字乘以一个字符串,我会说: d获取不兼容类型错误,而不是NaN。我不是在为我的代码提供特定的答案,因为我无法提供答案,而是提供更笼统的解释。

1 个答案:

答案 0 :(得分:0)

NaN可能是由除以@JoSSte所述不能转换为数字的变量引起的。 但是,正如我凭经验发现的那样,Flutter除以0时不会抛出错误,例如,与python抛出ZeroDivisionError的情况相反。当分别将正数和负数除以零时,Flutter会将被零除的输出视为无穷大或-无穷大。

所以这是有道理的,但是在无法将无穷大接受为值的情况下(不是这样),它会引发错误,指出框架本身存在错误。