>웹 프론트엔드 >JS 튜토리얼 >dd-mm-yyyy 문자열을 JavaScript 날짜 개체로 안전하게 변환하는 방법은 무엇입니까?

dd-mm-yyyy 문자열을 JavaScript 날짜 개체로 안전하게 변환하는 방법은 무엇입니까?

Susan Sarandon
Susan Sarandon원래의
2024-11-22 19:57:14370검색

How to Safely Convert a dd-mm-yyyy String to a JavaScript Date Object?

dd-mm-yyyy 형식의 문자열을 JavaScript의 날짜 객체로 변환

dd-mm-yyyy 형식의 문자열을 변환하려고 할 때 Date 객체에 '-'가 있기 때문에 "잘못된 날짜" 오류가 발생할 수 있습니다. 기호.

해결책 1: "-"로 분할

문자열을 개별 일, 월, 연도 구성 요소로 나눕니다.

var dateStr = $("#datepicker").val();
var dateParts = dateStr.split("-");
var date = new Date(dateParts[2], dateParts[1] - 1, dateParts[0]);

해결책 2: 정규식 사용 (정규식)

정규식을 사용하여 문자열에서 개별 구성요소를 추출합니다.

var regex = /(\d{2})-(\d{2})-(\d{4})/;
var date = new Date(dateStr.replace(regex, "//"));

권장사항: "-"로 분할

정규식은 더 많은 유연성을 제공하지만 고정 형식 문자열을 구문 분석할 때 "-"로 분할하는 것이 좋습니다. 특히 코드의 여러 부분에서 구문 분석 논리를 재사용하는 경우 더 간단하고 효율적입니다.

재사용성과 최신 JavaScript

재사용성을 위해 구문 분석을 래핑할 수 있습니다. 함수의 논리:

function parseDate(dateStr) {
  var dateParts = dateStr.split("-");
  return new Date(dateParts[2], dateParts[1] - 1, dateParts[0]);
}

최신 JavaScript에서는 배열 구조 분해를 사용하여 구문 분석 중:

const parseDate = (dateStr) => {
  const [day, month, year] = dateStr.split("-");
  return new Date(year, month - 1, day);
};

위 내용은 dd-mm-yyyy 문자열을 JavaScript 날짜 개체로 안전하게 변환하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.