• js 时间戳根据时区显示出年月日


    转化年月日时分秒的方法

    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;
    };

    时区转化方法

    /*****
    * i  为时区值
    * timeVal 传入的时间戳
    *******/
    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));
    }
    console.log(getLocalTime(7, 1586941817471)); //东7区,泰国曼谷的时间,如果自己做测试,是比北京时间刚好少一个小时。

      

    东区时间:

    零时区-伦敦时间

    东一区-柏林时间

    东二区-雅典时间

    东三区-莫斯科时间

    东五区-伊斯兰堡时间

    东六区-科伦坡时间

    东七区-曼谷时间

    东八区-北京时间

    东九区-东京时间

    东十区-悉尼时间

    东十二区-斐济时间

    西区时间:

    西十区-斐济时间

    西九区-阿拉斯加时间

    西八区-太平洋时间(美国和加拿大)

    西七区-山地时间(美国和加拿大)

    西六区-中部时间(美国和加拿大)

    西五区-东部时间(美国和加拿大)

    西四区-大西洋时间(加拿大

    西三区-巴西利亚时间

  • 相关阅读:
    序列&权限&索引&视图的语句
    currval &nextval的差异理解
    数据库表的创建、修改、清空、数据的插入、更新、删除 语句
    数据库(日期、字符大小写控制、转换)函数
    数据库的相关语句(where,order by)
    多线程的两种方法(卖票系统展示)
    杨辉三角的几种方法
    网络编程的基础代码
    文件的复制(逐字节/整体)
    gui小计算器的程序写法
  • 原文地址:https://www.cnblogs.com/tanweiwei/p/12711723.html
Copyright © 2020-2023  润新知