任何人都可以解释为什么 DateTime.parse返回这个,而不是失败,这是我在传递无效日期时所期望的行为?
require 'date'
DateTime.parse "X5pxmDwewKlIgJ_G0HX6TI2sMoY1XOgOcz09oQ4RO9U"
=> #<DateTime: 2017-01-09T00:00:00+00:00 ((2457763j,0s,0n),+0s,2299161j)>
Run Code Online (Sandbox Code Playgroud)
我试图只留下数字,但随后它给出了ArgumentError: invalid date,我也尝试修改一点字符串,但同样,它失败了:
DateTime.parse "X5px4fGHewKlIgJ_G0635I2sMoY1XOgOcz09oQ4ROA1"
ArgumentError: invalid date
Run Code Online (Sandbox Code Playgroud)
有任何想法吗?
parse努力提取日期.您可以使用Date#_parse它来查看它找到的内容:
require 'date'
Date._parse 'X5pxmDwewKlIgJ_G0HX6TI2sMoY1XOgOcz09oQ4RO9U'
#=> {:hour=>0, :mday=>9}
Run Code Online (Sandbox Code Playgroud)
:hour=>0 是由于 0H(H =小时)
Date._parse '0H'
#=> {:hour=>0}
Run Code Online (Sandbox Code Playgroud)
而且:mday=>9是因为09:
Date._parse '09'
#=> {:mday=>9}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
92 次 |
| 最近记录: |