Moment JS, UTC to Local time and Moment Timezone

by Pratik Bhattachary

HTML

<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.10.6/moment.min.js"></script>
<script src="//cdnjs.cloudflare.com/ajax/libs/moment-timezone/0.4.1/moment-timezone-with-data-2010-2020.min.js"></script>
UTC<br/>
<div id="divUTC"></div><br/>
Your Local Time with respect to above UTC time<br/>
<div id="divLocal">
</div>    
<br/>Thailand date time<br/>
<div id="divThai">
</div>  
<br/>America date time<br/>
<div id="divUsa">
</div>

JavaScript

$(function(){
//var selectedTmeStr = "Thu May 30 2019 00:00:00 GMT+0530 (India Standard Time)";
var selectedTmeStr = "Thu May 30 2019";
var date = new Date(selectedTmeStr);
//alert(date);

var startDate = moment(selectedTmeStr).tz("Etc/GMT+11", true).startOf('day');
var currentTime = moment.tz("Etc/GMT+11").startOf('day');

alert("Start " + startDate.format());
alert("Current " + currentTime.format());

var difference = startDate.diff(currentTime, 'days');
alert("Difference " + difference);




//alert(moment.tz("Asia/Calcutta"));

var startDate = new Date();
var delegationStartDate = moment.tz(startDate.toDateString(), 'Etc/GMT-14');

//alert("Local Time " + delegationStartDate.format("ddd MMM DD YYYY"));
//alert("UTC " + delegationStartDate.utc().toDate());

var d = (moment.tz("Etc/GMT-14"));
var newd = d.add(1, 'days').format("YYYY-MM-DD HH:mm:ss");
var newd_ff = d.add(1, 'days').format("ddd MMM DD YYYY");


var sameDInAsia = moment.tz(newd, "Asia/Calcutta")

//alert("Formatted - " + newd_ff);
//alert("ACTUAL - " + d.format());
// alert("IST - " + sameDInAsia.format())


//alert("ACTUA FormattedL - " + newd);


//var date = new Date(newd);
//alert(date);


  var mDate_1 = moment.tz("1/22/2018", "Asia/Calcutta");
  var mDate_2 = moment.tz("4/25/2019", "Asia/Calcutta");
  var mDate_Now = moment.tz('Asia/Calcutta')
  var diff = mDate_Now.diff(mDate_2, 'days');
  
  setInterval(function(){
  //console.log(diff);
    var divUtc = $('#divUTC');
    var divLocal = $('#divLocal');  
    //put UTC time into divUTC  
    divUtc.text(moment.utc().format('YYYY-MM-DD HH:mm:ss'));      
    
    //get text from divUTC and conver to local timezone  
    var localTime  = moment.utc(divUtc.text()).toDate();
    localTime = moment(localTime).format('YYYY-MM-DD HH:mm:ss');
    divLocal.text(localTime);  
      
    $('#divThai').text(moment.tz('Asia/Calcutta').format('YYYY-MM-DD HH:mm:ss'));
    $('#divUsa').text(moment.tz('America/Los_Angeles').format('YYYY-MM-DD HH:mm:ss'));
 ...