itsource

JavaScript에서 날짜/시간을 빼는 방법

mycopycode 2022. 9. 4. 21:24
반응형

JavaScript에서 날짜/시간을 빼는 방법

날짜/시간을 포함하는 그리드에 필드가 있으며, 현재 날짜/시간의 차이를 알아야 합니다.그렇게 하는 가장 좋은 방법은 무엇일까요?

날짜는 다음과 같이 저장됩니다."2011-02-07 15:13:06".

이렇게 하면 두 날짜의 차이를 밀리초 단위로 알 수 있습니다.

var diff = Math.abs(date1 - date2);

이 예에서는 다음과 같습니다.

var diff = Math.abs(new Date() - compareDate);

확실히 할 필요가 있다compareDate유효한Date물건.

이런 게 너한테 잘 맞을 것 같아

var diff = Math.abs(new Date() - new Date(dateStr.replace(/-/g,'/')));

즉, 회전"2011-02-07 15:13:06"안으로new Date('2011/02/07 15:13:06')이 형식은,Date컨스트럭터는 이해할 수 있습니다.

두 개의 날짜 개체를 추출할 수 있습니다.

var d1 = new Date(); //"now"
var d2 = new Date("2011/02/01");  // some date
var diff = Math.abs(d1-d2);  // difference in milliseconds

같은 브라우저 클라이언트에서 날짜를 빼거나 낮 시간 단축과 같은 엣지 케이스에 신경 쓰지 않는 한 강력한 현지화 API를 제공하는 moment.js를 사용하는 것이 좋습니다.예를 들어 utils.js에는 다음과 같은 정보가 있습니다.

subtractDates: function(date1, date2) {
    return moment.subtract(date1, date2).milliseconds();
},
millisecondsSince: function(dateSince) {
    return moment().subtract(dateSince).milliseconds();
},

벽시계 시간을 다르게 하고 싶은 경우 로컬 시간대 및 주간 조명 인식 기능을 사용합니다.


Date.prototype.diffDays = function (date: Date): number {

    var utcThis = Date.UTC(this.getFullYear(), this.getMonth(), this.getDate(), this.getHours(), this.getMinutes(), this.getSeconds(), this.getMilliseconds());
    var utcOther = Date.UTC(date.getFullYear(), date.getMonth(), date.getDate(), date.getHours(), date.getMinutes(), date.getSeconds(), date.getMilliseconds());

    return (utcThis - utcOther) / 86400000;
};

시험


it('diffDays - Czech DST', function () {
    // expect this to parse as local time
    // with Czech calendar DST change happened 2012-03-25 02:00
    var pre = new Date('2012/03/24 03:04:05');
    var post = new Date('2012/03/27 03:04:05');

    // regardless DST, you still wish to see 3 days
    expect(pre.diffDays(post)).toEqual(-3);
});

diff minutes 또는 seconds는 같은 방식입니다.

사용할 수 있습니다.getTime()변환 방법Date1970년 1월 1일 이후 밀리초 단위로 변환됩니다.그러면 날짜로 산술 연산을 쉽게 할 수 있습니다.물론 번호를 다시 변환하여Date와 함께setTime()여기 를 참조해 주세요.

언급URL : https://stackoverflow.com/questions/4944750/how-to-subtract-date-time-in-javascript

반응형