[技术积累]vue中对时间的处理-时间戳、时区转换

本文介绍了如何在JavaScript中使用内置Date对象和moment.js库进行时间戳的获取和转换,包括本地时间到时间戳,时间戳到指定时区时间的转换,并展示了获取时区名称的方法。示例代码详细展示了每一步操作,适合开发者参考。
摘要由CSDN通过智能技术生成
  1. 时间戳获取 .getTime() - 方法之一

    let currentTime = new Date(); // 获取时间:Sun Sep 26 2021 15:49:55 GMT+0800 (中国标准时间)
    // 转换成时间戳:
    let timeStamp = currentTime.getTime(); // 1632642703153
    
  2. 把时间戳转换成时间

    var time = new Date(时间戳);
    var y = time.getFullYear();
    var m = time.getMonth()+1;
    var d = time.getDate();
    var h = time.getHours();
    var mm = time.getMinutes();
    var s = time.getSeconds();
    console.log(y+'-'+this.add0(m)+'-'+this.add0(d)+' '+this.add0(h)+':'+this.add0(mm)+':'+this.add0(s))
    
    methods: {
    	add0(m){return m<10?'0'+m:m }
    }
    
  3. 把时间戳转换成指定时区时间 - moment.js
    官网地址: moment.js.

    npm i moment --save
    
    // main.js
    import moment from 'moment'
    Vue.prototype.$moment = moment
    
    // 组件内
    var offset = new Date() + "";     //将时间格式转为字符串
    let asderf = offset.indexOf('GMT');
    let timezoneId = offset.substring(asderf+3,asderf+8);//拿到当前所在时区 +0800 东八区
    let testtime = this.$moment(1632645318814).utcOffset(timezoneId ).format('YYYY-MM-DD HH:mm:ss');
    console.log('testtime', testtime) // testtime就是时间戳1632645318814根据时区转换成的时间。
    
    
  4. 获取时区Name
    下载依赖文件: 下载地址.
    下载完成后,放到vue项目中,在用到的组件中引入jstz对象,如下代码:

    // script
    import {jstz} from '../../utils/time-zone'
    let timezone = jstz.determine();
    let timezoneName=timezone.name();
    console.log(timezoneName) // "Asia/Shanghai"
    

references: https://www.jb51.net/article/77066.htm

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值