"-"로 분할
문자열을 필요한 부분으로 구문 분석하십시오.
var from = $("#datepicker").val().split("-")
var f = new Date(from[2], from[1] - 1, from[0])
정규식 사용
var date = new Date("15-05-2018".replace( /(\d{2})-(\d{2})-(\d{4})/, "$2/$1/$3"))
왜 정규식을 사용하지 않습니까?
하이픈으로 구분 된 세 부분으로 구성된 문자열을 작업한다는 것을 알고 있기 때문입니다.
그러나 다른 문자열 내에서 동일한 문자열을 찾고 있다면 정규식을 사용하는 것이 좋습니다.
재사용
샘플 코드에서 또는 코드베이스의 다른 곳에서이 작업을 두 번 이상 수행하므로 함수로 묶으십시오.
function toDate(dateStr) {
var parts = dateStr.split("-")
return new Date(parts[2], parts[1] - 1, parts[0])
}
다음과 같이 사용 :
var from = $("#datepicker").val()
var to = $("#datepickertwo").val()
var f = toDate(from)
var t = toDate(to)
또는 함수에서 jQuery를 신경 쓰지 않으면 :
function toDate(selector) {
var from = $(selector).val().split("-")
return new Date(from[2], from[1] - 1, from[0])
}
다음과 같이 사용 :
var f = toDate("#datepicker")
var t = toDate("#datepickertwo")
현대 JavaScript
좀 더 현대적인 JS를 사용할 수 있다면 배열 파괴는 좋은 터치입니다.
const toDate = (dateStr) => {
const [day, month, year] = dateStr.split("-")
return new Date(year, month - 1, day)
}