JavaScript에서 날짜를 1 일 줄이는 가장 간단한 방법은 무엇입니까?
-
09-06-2019 - |
문제
JavaScript 날짜를 1 일 씩 줄여서 몇 달/년에 걸쳐 롤백해야합니다. 즉, '오늘'의 날짜가 있다면 '어제'날짜를 얻고 싶습니다.
이 작업을 수행 할 때 항상 필요한 것보다 더 많은 코드를 사용하는 것 같습니다. 따라서 더 간단한 방법이 있는지 궁금합니다.
가장 간단한 방법은 무엇입니까?
편집 : 아래의 답변에서 혼란을 피하기 위해 이것은 자바 스크립트 질문, 자바 하나가 아닙니다.
해결책
var d = new Date();
d.setDate(d.getDate() - 1);
console.log(d);
다른 팁
var today = new Date();
var yesterday = new Date().setDate(today.getDate() -1);
day.setDate(day.getDate() -1); //will be wrong
이것은 잘못된 날이 돌아올 것입니다. UTC -03 : 00에서 확인하십시오
var d = new Date(2014,9,19);
d.setDate(d.getDate()-1);// will return Oct 17
더 나은 사용 :
var n = day.getTime();
n -= 86400000;
day = new Date(n); //works fine for everything
getDate()-1
트릭을해야합니다
: 빠른 예 : 예 : : : : 예 : : 예 : : 예 : : 예 : : 예 : : 예 : 예 : : 예 : : 예 : 예 : : 예 : 예 : : 예 : 예 : : 예 : 예 : : 예 : 예 : : 예 : 예 : : 예 : 예 : : 예 : 예 : : 예 : 예 : 예 : 예 : 예 : 예 : 예 : 예 : 예 : 예 : 예 : 예 : 예 : 예 : 예 : 예 : 예 : 예 : 예 : 예 : 예 : 예 : 예 : 예 : 예 : 예 : 예 : 예 : : 예 : : 예 : : 예 : 예 : 예 : 예 : 예)
var day = new Date( "January 1 2008" );
day.setDate(day.getDate() -1);
alert(day);
origDate = new Date();
decrementedDate = new Date(origDate.getTime() - (86400 * 1000));
console.log(decrementedDate);
setDate(dayValue)
dayValue
월 1 일에서 31 일까지의 정수입니다.
~에서 https://developer.mozilla.org/en/core_javaScript_1.5_Reference/global_objects/date/setdate
문제를 해결하는 행동 (및 광산)은 사양 범위를 벗어난 것 같습니다.
필요한 것 같습니다. AddDate (), addMonth (), addyear () ... 함수입니다.
JS에서 날짜로 작업하는 것은 두통이 될 수 있습니다. 따라서 가장 간단한 방법은 사용하는 것입니다 Moment.js 모든 날짜 작업의 경우.
하루를 빼려면 :
const date = moment().subtract(1, 'day')