RangeError: invalid date

λ©”μ‹œμ§€

RangeError: invalid date (Firefox)
RangeError: invalid time value (Chrome)
RangeError: Provided date is not in valid range (Chrome)

μ—λŸ¬ μ’…λ₯˜

무엇이 잘λͺ» 된 걸까?

μœ νš¨ν•˜μ§€ μ•Šμ€ String이 Date λ‚˜ Date.parse()에 μž…λ ₯λ˜μ—ˆμŠ΅λ‹ˆλ‹€.

μ˜ˆμ‹œ

μ˜¬λ°”λ₯΄μ§€ μ•Šμ€ μ‚¬μš© μ˜ˆμ‹œ

인식 ν•  수 μ—†λŠ” stringμ΄λ‚˜ 잘λͺ»λœ μš”μ†Œ 값을 ν¬ν•¨ν•˜λŠ” ISO ν˜•μ‹μ˜ λ‚ μ§œ string은 μΌλ°˜μ μœΌλ‘œ NaN을 λ°˜ν™˜ν•©λ‹ˆλ‹€. κ·ΈλŸ¬λ‚˜ κ΅¬ν˜„ 방식에 따라 ISO ν˜•μ‹ string을 λ”°λ₯΄μ§€ μ•ŠλŠ” 경우 RangeError: invalid dateκ°€ ν‘œμ‹œ 될 수 μžˆμŠ΅λ‹ˆλ‹€. Firefox의 경우:

new Date('foo-bar 2014');
new Date('2014-25-23').toISOString();
new Date('foo-bar 2014').toString();

κ·ΈλŸ¬λ‚˜ 이 경우, Firefoxμ—μ„œλŠ” NaN 을 λ°˜ν™˜ν•©λ‹ˆλ‹€:

Date.parse('foo-bar 2014'); // NaN

더 μžμ„Έν•œ 사항은  Date.parse() λ¬Έμ„œλ₯Ό μ°Έκ³ ν•˜μ„Έμš”.

μ˜¬λ°”λ₯Έ μ‚¬μš© μ˜ˆμ‹œ

new Date('05 October 2011 14:48 UTC');

더 보기