> 웹 프론트엔드 > JS 튜토리얼 > dd-mm-yyyy 문자열을 JavaScript 날짜 개체로 변환하려면 어떻게 해야 합니까?

dd-mm-yyyy 문자열을 JavaScript 날짜 개체로 변환하려면 어떻게 해야 합니까?

DDD
풀어 주다: 2024-11-19 22:43:02
원래의
815명이 탐색했습니다.

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

dd-mm-yyyy 문자열을 날짜로 변환

다음을 사용하여 dd-mm-yyyy 문자열을 유효한 날짜 객체로 구문 분석할 수 없음 JavaScript의 Date 생성자는 주로 생성자가 인식하지 못하는 '-' 기호가 있기 때문에 발생합니다. 이를 극복하려면 대체 접근 방식이 필요합니다.

해결책: "-"로 분할

한 가지 해결 방법은 '-'를 사용하여 문자열을 개별 구성 요소로 분할하는 것입니다. 기호를 구분 기호로 사용한 다음 일, 월, 연도 값을 사용하여 새 Date 객체를 만듭니다.

var from = $("#datepicker").val().split("-")
var f = new Date(from[2], from[1] - 1, from[0])
로그인 후 복사

해결책: Regex 사용

정규 표현식도 가능합니다. 개별 날짜 구성 요소를 추출하고 유효한 날짜 문자열을 구성하는 데 사용됩니다.

var date = new Date("15-05-2018".replace( /(\d{2})-(\d{2})-(\d{4})/, "//"))
로그인 후 복사

권장 사항: "-"로 분할

두 접근 방식 모두 유효하지만 "split on -" 방법은 잠재적으로 더 복잡한 정규식 일치에 의존하지 않고 입력 문자열의 알려진 형식을 직접 대상으로 하기 때문에 이 특정 작업에 대해 틀림없이 더 구체적이고 효율적입니다.

재사용성

이 변환이 코드에서 여러 번 수행되는 경우 재사용성과 유지 관리를 위해 이를 함수에 캡슐화하는 것이 좋습니다.

function toDate(dateStr) {
  var parts = dateStr.split("-")
  return new Date(parts[2], parts[1] - 1, parts[0])
}
로그인 후 복사

함수 사용:

var f = toDate($("#datepicker").val())
var t = toDate($("#datepickertwo").val())
로그인 후 복사

최신 JavaScript

최신 JavaScript 환경의 경우 배열 구조 분해를 통해 코드를 단순화할 수 있습니다.

const toDate = (dateStr) => {
  const [day, month, year] = dateStr.split("-")
  return new Date(year, month - 1, day)
}
로그인 후 복사

위 내용은 dd-mm-yyyy 문자열을 JavaScript 날짜 개체로 변환하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿