JSFiddle - React, Tailwind, and code Playground

by 1eddy87

HTML

<span>Start: The local time is 08/06/1970, 8:00:00 am</span>
<br>
<span>End: The local time is 12/06/1970, 4:00:00 pm</span>

JavaScript

// function to calculate local time
// in a different city
// given the city's UTC offset
function calcTime(offset, dateTime) {

  // create Date object for current location
  d = new Date(dateTime);

  // convert to msec
  // add local time zone offset
  // get UTC time in msec
  utc = d.getTime() + (d.getTimezoneOffset() * 60000);

  var region = offset;

  switch (region) {
    case 'SYD':
      specificTimeOffset = +10;
      break;
    case 'HND':
      specificTimeOffset = +9;
      break;
    case 'BLR':
      specificTimeOffset = +5.5;
      break;
    case 'CPT':
      specificTimeOffset = +2;
      break;
    case 'DUB':
      specificTimeOffset = +1;
      break;
    case 'IAD':
      specificTimeOffset = -4;
      break;
    case 'DFW':
      specificTimeOffset = -5;
      break;
    case 'SEA':
      specificTimeOffset = -7;
      break;
    default:
      specificTimeOffset = 'Error';
  }

  // create new Date object for different city
  // using supplied offset
  nd = new Date(utc + (3600000 * specificTimeOffset));

  // return time as a string
  var removeTimeFromDate = nd.toLocaleString();
  return clearedDT = (removeTimeFromDate.substring(removeTimeFromDate.lastIndexOf(',') + 1));

}

alert(calcTime('SEA', '1970-06-12T23:00:00Z'));

// get Bombay time
//alert(calcTime('+5.5'));

// get Singapore time
//alert(calcTime('+8'));

// get London time
//alert(calcTime('+1'));

// get Sydney time
//alert(calcTime('+10'));