时区之时间戳

间戳是一段记录秒数的整数,它表示从1970年1月1日00:00:00 UTC开始至今的秒数(或毫秒数)

任何时区的时间戳都是相同

 获取当前时区:

new Date().getTimezoneOffset()/-60(60),

中国属于东8区

function formatTime(date) {
  const year = date.getFullYear();
  const month = date.getMonth() + 1;
  const day = date.getDate();
  const hour = date.getHours();
  const minute = date.getMinutes();
  const second = date.getSeconds();
  return [year, month, day].map(formatNumber).join('-') + ' ' + [hour, minute, second].map(formatNumber).join(':');
}

const formatNumber = (n) => {
  const str = n.toString();
  return str[1] ? str : '0' + str;
};

 

*******/
function getLocalTime(i, timeVal) {
  //参数i为时区值数字,比如北京为东八区则输进8,西5输入-5
  if (typeof i !== 'number') return;
  var d = new Date(timeVal);
  //得到1970年一月一日到现在的秒数
  var len = timeVal;
  //本地时间与GMT时间的时间偏移差
  var offset = d.getTimezoneOffset() * 60000;
  //得到现在的格林尼治时间
  var utcTime = len + offset;
  return formatTime(new Date(utcTime + 3600000 * i));
}

 

posted @ 2023-05-25 16:12  小小强学习网  阅读(103)  评论(0编辑  收藏  举报