[javascript] JavaScript-두 날짜 사이에 분을 가져옵니다

날짜가 두 개인 경우 어떻게 사용할 수 있습니까 JavaScript 를 하여 두 날짜의 차이를 분 단위로 가져 오려면 어떻게해야합니까?



답변

이 코드를 확인할 수 있습니다 :

var today = new Date();
var Christmas = new Date("2012-12-25");
var diffMs = (Christmas - today); // milliseconds between now & Christmas
var diffDays = Math.floor(diffMs / 86400000); // days
var diffHrs = Math.floor((diffMs % 86400000) / 3600000); // hours
var diffMins = Math.round(((diffMs % 86400000) % 3600000) / 60000); // minutes
alert(diffDays + " days, " + diffHrs + " hours, " + diffMins + " minutes until Christmas 2009 =)");

또는 var diffMins = Math.floor((...폐기 초에 당신은 라운드 분하지 않으려면.


답변

2 개의 Date 객체를 빼면 밀리 초 단위의 차이가 나타납니다. 예 :

var diff = Math.abs(new Date('2011/10/09 12:00') - new Date('2011/10/09 00:00'));

Math.abs 절대 차이를 사용할 수 있습니다. new Date('2011/10/09 00:00') - new Date('2011/10/09 12:00') 동일한 결과 제공).

결과를 1000으로 나누면 몇 초가 걸립니다. 60으로 나누면 몇 분이 걸립니다. 전체 분, 사용 라운드 Math.floorMath.ceil:

var minutes = Math.floor((diff/1000)/60);

이 예에서 결과는 720입니다


답변

var startTime = new Date('2012/10/09 12:00');
var endTime = new Date('2013/10/09 12:00');
var difference = endTime.getTime() - startTime.getTime(); // This will give difference in milliseconds
var resultInMinutes = Math.round(difference / 60000);


답변

이 계산을 수행하는 간단한 함수 :

function getMinutesBetweenDates(startDate, endDate) {
    var diff = endDate.getTime() - startDate.getTime();
    return (diff / 60000);
}


답변

두 날짜의 차이를 분 단위로 표시해야합니다. 브라우저에서 사용해보십시오 :

const currDate = new Date('Tue Feb 13 2018 13:04:58 GMT+0200 (EET)')
const oldDate  = new Date('Tue Feb 13 2018 12:00:58 GMT+0200 (EET)')


(currDate - oldDate) / 60000 // 64


답변

작은 숫자로 작업하고 싶은 사람들을 위해

const today = new Date();
const endDate = new Date(startDate.setDate(startDate.getDate() + 7));
const days = parseInt((endDate - today) / (1000 * 60 * 60 * 24));
const hours = parseInt(Math.abs(endDate - today) / (1000 * 60 * 60) % 24);
const minutes = parseInt(Math.abs(endDate.getTime() - today.getTime()) / (1000 * 60) % 60);
const seconds = parseInt(Math.abs(endDate.getTime() - today.getTime()) / (1000) % 60); 


답변

이 문제는 다음 예제와 같이 moment.js로 쉽게 해결됩니다.

var difference = mostDate.diff(minorDate, "minutes");

다른 파라미터에 대해서는 두 번째 파라미터를 변경할 수 있습니다. moment.js 설명서를 참조하십시오.

예 : “일”, “시간”, “분”등

http://momentjs.com/docs/

moment.js의 CDN은 다음에서 사용할 수 있습니다.

https://cdnjs.com/libraries/moment.js

감사.

편집하다:

mostDate 및 minorDate는 모멘트 유형이어야합니다.