关于Ruby中`0`除以浮点数的坑
Ruby中用0
除以整数时解释器会丢出ZeroDivisionError
的错误。
这没有问题,很符合我们的直觉。
1
2
3
4
5
irb(main):001:0> 114154/0
Traceback (most recent call last):
1: from(irb):1 ……
ZeroDivisionError (divided by 0)
但用0
除以浮点数时情况就不一样了。
1
2
irb(main):002:0> 1.1/0
=> Infinity
解释器没有抛出error,反而返回了Infinity
顺带一提,在JS中0
除以任何数都返回Infinity
而在Python中则会抛出ZeroDivisionError: float division by zero
This post is licensed under CC BY 4.0 by the author.