期望时间.zone.parse以无效的日期增加错误,但返回nil



为什么 Time.zone.parse('invalid')不引起错误,而 Time.parse('invalid')则不引起错误?


使用导轨4.2.7.1

示例
>> Time.zone.parse('invalid')
nil
>> Time.parse('invalid')
ArgumentError: no time information in "invalid"
    from D:/softwares/ruby/Ruby22/lib/ruby/2.2.0/time.rb:252:in `make_time'
    from D:/softwares/ruby/Ruby22/lib/ruby/2.2.0/time.rb:364:in `parse'

两种方法都调用 Date._parse,如果无法提取日期,则返回 {}

Time.zone.parse在那里停止并返回,如果结果为空。 Time.parse致电make_time,如果无法生成日期,则会引发错误。

相关内容

  • 没有找到相关文章

最新更新