Created
October 31, 2018 12:07
-
-
Save jastisriradheshyam/10fdec4ecb9a0cb775fcdbb0d33fd40b to your computer and use it in GitHub Desktop.
date difference js
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// Reference - https://www.w3resource.com/javascript-exercises/javascript-date-exercise-8.php | |
var date_diff_inseconds = function (date1, date2) { | |
let dt1 = new Date(date1); | |
let dt2 = new Date(date2); | |
return Math.floor((Date.UTC(dt2.getFullYear(), dt2.getMonth(), dt2.getDate(), dt2.getHours(), dt2.getMinutes(), dt2.getSeconds()) - Date.UTC(dt1.getFullYear(), dt1.getMonth(), dt1.getDate(), dt1.getHours(), dt1.getMinutes(), dt1.getSeconds())) / (1000)); | |
}; | |
var date_diff_inminutes = function (date1, date2) { | |
let dt1 = new Date(date1); | |
let dt2 = new Date(date2); | |
return Math.floor((Date.UTC(dt2.getFullYear(), dt2.getMonth(), dt2.getDate(), dt2.getHours(), dt2.getMinutes()) - Date.UTC(dt1.getFullYear(), dt1.getMonth(), dt1.getDate(), dt1.getHours(), dt1.getMinutes())) / (1000 * 60)); | |
}; | |
var date_diff_inhours = function (date1, date2) { | |
let dth1 = new Date(date1); | |
let dth2 = new Date(date2); | |
return Math.floor((Date.UTC(dth2.getFullYear(), dth2.getMonth(), dth2.getDate(), dth2.getHours()) - Date.UTC(dth1.getFullYear(), dth1.getMonth(), dth1.getDate(), dth1.getHours())) / (1000 * 60 * 60)); | |
}; | |
var date_diff_indays = function (date1, date2) { | |
let dt1 = new Date(date1); | |
let dt2 = new Date(date2); | |
return Math.floor((Date.UTC(dt2.getFullYear(), dt2.getMonth(), dt2.getDate()) - Date.UTC(dt1.getFullYear(), dt1.getMonth(), dt1.getDate())) / (1000 * 60 * 60 * 24)); | |
}; |
var d = new Date();
console.log(d.toString())
var curr = function(d) {
let year = d.getFullYear();
let month = d.getMonth();
let date = d.getDate();
let hour = d.getHours();
let min = d.getMinutes();
var sec = d.getSeconds();
var mill = d.getMilliseconds();
console.log(year,month,date,hour,min,sec,mill)
return Date.UTC(year,month,date,hour,min,sec,mill)
}
var IST = function(d) {
let year = d.toLocaleString('en-US', {year:"numeric", timeZone: 'Asia/Kolkata'});
let month = d.toLocaleString('en-US', {month:"2-digit", timeZone: 'Asia/Kolkata'});
let date = d.toLocaleString('en-US', {day:"2-digit", timeZone: 'Asia/Kolkata'});
let hour = d.toLocaleString('en-US', {hour:"numeric",hour12:false, timeZone: 'Asia/Kolkata'});
let min = d.toLocaleString('en-US', {minute:"numeric", timeZone: 'Asia/Kolkata'});
var sec = d.toLocaleString('en-US', {second:"numeric", timeZone: 'Asia/Kolkata'});
var mill = d.getMilliseconds();
console.log(year,month,date,hour,min,sec,mill)
return Date.UTC(year,month-1,date,hour,min,sec,mill)
}
// curr(d)
console.log(d.getTime(),new Date(IST(d)).toString(),IST(d))
console.log("curr",d.getTime(),new Date(curr(d)).toString(),curr(d))
console.log(new Date(IST(d)) - new Date(curr(d)))
// 19800000
console.log(new Date("02/20/2019").toString())
let c = new Date("02/20/2019");
console.log(c.toString())
console.log(new Date(c.getTime() + diff).toLocaleString({timeZone: 'Asia/Kolkata'}))
var getDateInLocalTime = function (date, timeZone) {
var currentDate = new Date(new Date.setMilliseconds(0));
var requiredTimeZoneDate = new Date(currentDate.toLocaleString("en-US", {
timeZone: timeZone
})).getTime(); // current time in specified time zone
var currentTimeZoneDate = currentDate.getTime(); //My current time
var timeZoneDifference = requiredTimeZoneDate - currentTimeZoneDate;
var requiredDate = new Date(date);
var requiredTime = requiredDate.getTime() - timeZoneDifference
return requiredTime
}
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Has better readability
Reference:
[1]: Get difference between 2 dates in JavaScript? - Stack Overflow