• js 时间的国际化处理



    //1 获取相对于0时区的当地时区(默认得到的是分钟,可能是负数;北京市东八+8 美国华盛顿为西五-5),中国比美国快13小时
    //js默认转换的时候自带时区,只要数据库存的是时间戳,显示的时候不用刻意转换
    //入库如果是存 年月日,需要获取当前 对应的国外时间处理
    getTimesByZone() {
    //得到本地时间
    var d = new Date();

    //得到1970年一月一日到现在的秒数
    var local = d.getTime();

    //本地时间与GMT时间的时间偏移差
    var offset = d.getTimezoneOffset() * 60000;

    //获取本地时区,判断如果是负的则相加得到GMC时间,正的则相减
    var localUtc = new Date().getTimezoneOffset() / 60;

    //得到现在的格林尼治时间
    var utcTime;
    if (localUtc > 0) {
    utcTime = parseInt(local - offset);
    } else {
    utcTime = parseInt(local + offset);
    }

    //得到时区的绝对值
    var localTime = utcTime + 3600000 * Math.abs(localUtc);

    let date = new Date(localTime);
    console.log("根据本地时间得知" + localUtc + "时区的时间是 " + date.toLocaleString());
    console.log("系统默认展示时间方式是:" + localTime)

    return localTime;
    },
     
     
    总结:1  只要数据库里面存储的是时间戳,那么显示的时候,不用特殊转换,date函数会默认根据系统的时区转成当地时间。
             2  一般只处理当前时间的对应的国际化时间。
  • 相关阅读:
    nginx+keepalived实现高可用
    zookeeper集群和安装dubbo的管控台
    常见设计模式的解析和实现(C++)
    sed的工作原理(pattern space 和 hold space)
    sed学习笔记
    C++协助破案问题
    C++中extern “C”含义深层探索
    阿里巴巴笔试第28题
    阿里巴巴集团2014校园招聘笔试题(研发工程师--北邮站)
    淘宝数据魔方技术架构解析
  • 原文地址:https://www.cnblogs.com/softwarelanguagebs/p/9999901.html
Copyright © 2020-2023  润新知