반응형
날짜 문자열이 ISO 및 UTC 형식인지 확인합니다.
이 형식의 문자열이 있습니다.2018-02-26T23:10:00.780Z
ISO8601과 UTC 형식인지 확인하고 싶습니다.
let date= '2011-10-05T14:48:00.000Z';
const error;
var dateParsed= Date.parse(date);
if(dateParsed.toISOString()==dateParsed && dateParsed.toUTCString()==dateParsed) {
return date;
}
else {
throw new BadRequestException('Validation failed');
}
문제는 다음과 같습니다.
- 오류 메시지가 표시되지 않음
- Date.parse() 문자열 날짜 형식을 다음으로 변경합니다.
1317826080000
ISO 또는 UTC 형식과 비교할 수 없습니다.
저는 moment.js와 같은 라이브러리를 사용하지 않을 것입니다.
시도 - 문자열을 구문 분석하는 대신 실제로 날짜 개체를 만들어야 합니다.
참고: 게시한 대로 문자열을 테스트합니다.
YYYY-MM-DDTHH:MN:SS.MSSZ
- 날짜: 2018-10-18
- UTC 기준 날짜 및 시간 합산: 2018-10-18T08:04:30+00:00(00:00에 Z 및 TZ 제외)
- 2018-10-18T08:04:30Z
- 20181018T080430Z
- 주: 2018-W42
- 주 번호가 있는 날짜: 2018-W42-4
- 연도가 없는 날짜: --10-18(ISO8601:2000의 마지막, RFC 6350[2]에서 사용 중)
- 주문일자: 2018-291
잘못된 날짜 문자열을 더 이상 허용하지 않습니다.
function isIsoDate(str) {
if (!/\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}.\d{3}Z/.test(str)) return false;
const d = new Date(str);
return d instanceof Date && !isNaN(d.getTime()) && d.toISOString()===str; // valid date
}
console.log(isIsoDate('2011-10-05T14:48:00.000Z'))
console.log(isIsoDate('2018-11-10T11:22:33+00:00'));
console.log(isIsoDate('2011-10-05T14:99:00.000Z')); // invalid time part
let date= '2011-10-05T14:48:00.000Z';
var dateParsed= new Date(Date.parse(date));
//dateParsed
//output: Wed Oct 05 2011 19:48:00 GMT+0500 (Pakistan Standard Time)
if(dateParsed.toISOString()==date) {
//Date is in ISO
}else if(dateParsed.toUTCString()==date){
//DATE os om UTC Format
}
당신이 원하는 것은 다음과 같습니다.
let date= '2011-10-05T14:48:00.000Z';
const dateParsed = new Date(Date.parse(date))
if(dateParsed.toUTCString() === new Date(d).toUTCString()){
return date;
} else {
throw new BadRequestException('Validation failed');
}
그것이 확실하기를 바랍니다!
언급URL : https://stackoverflow.com/questions/52869695/check-if-a-date-string-is-in-iso-and-utc-format
반응형
'sourcecode' 카테고리의 다른 글
Firebase 계정에서 Firebase 참조 URL을 어디서 찾을 수 있습니까? (0) | 2023.06.12 |
---|---|
참조:Chrome Developer Tools의 hover state (0) | 2023.06.12 |
벡터의 n번째 요소마다 추출 (0) | 2023.06.07 |
dbms_output 버퍼를 늘리는 방법은 무엇입니까? (0) | 2023.06.07 |
Excel 드롭다운 목록에서 글꼴 크기와 색상을 변경하려면 어떻게 해야 합니까? (0) | 2023.06.07 |