微信小程序,时间戳和日期格式互相转化

本文介绍了一种在微信小程序中将时间戳转换为日期格式的方法。通过提供的实用函数,可以轻松地将时间戳格式化为所需的日期格式,支持自定义格式。

微信小程序,时间戳转为日期格式

 通常后台传递过来的都是时间戳,但是前台展示不能展示时间戳。就需要转化了。

功能说明:

微信小程序里,时间戳转化为日期格式,支持自定义、

拷贝至项目utils/utils.js中,并注意在js中声明下;

module.exports = {
    formatTime: formatTime,  // 日期转时间戳
    formatTimeTwo: formatTimeTwo  // 时间戳转日期
}

utils/utils.js 写法

function formatTime(date) {
    var year = date.getFullYear()
    var month = date.getMonth() + 1
    var day = date.getDate()

    var hour = date.getHours()
    var minute = date.getMinutes()
    var second = date.getSeconds()


    return [year, month, day].map(formatNumber).join('/') + ' ' + [hour, minute, second].map(formatNumber).join(':')
}

function formatNumber(n) {
    n = n.toString()
    return n[1] ? n : '0' + n
}

/** 
 * 时间戳转化为年 月 日 时 分 秒 
 * number: 传入时间戳 
 * format:返回格式,支持自定义,但参数必须与formateArr里保持一致 
*/
function formatTimeTwo(number, format) {

    var formateArr = ['Y', 'M', 'D', 'h', 'm', 's'];
    var returnArr = [];

    var date = new Date(number * 1000);
    returnArr.push(date.getFullYear());
    returnArr.push(formatNumber(date.getMonth() + 1));
    returnArr.push(formatNumber(date.getDate()));

    returnArr.push(formatNumber(date.getHours()));
    returnArr.push(formatNumber(date.getMinutes()));
    returnArr.push(formatNumber(date.getSeconds()));

    for (var i in returnArr) {
        format = format.replace(formateArr[i], returnArr[i]);
    }
    return format;
}

module.exports = {
    formatTime: formatTime,
    formatTimeTwo: formatTimeTwo  
}

在js 的 中调用如下,首先要先引入 until js

var time = require('../../utils/util.js');

 

 var sjc = 1488481383;
    console.log(time.formatTime(sjc,'Y/M/D h:m:s'));
    console.log(time.formatTime(sjc, 'h:m'));



得到的效果如下:

2017/03/03 03:03:03
03:03

 

转载于:https://www.cnblogs.com/haonanZhang/p/8797544.html

### 将微信小程序中的时间戳转换为时分秒格式 在微信小程序中处理时间戳并将其转换为`HH:mm:ss`格式,可以利用JavaScript内置的方法来实现。考虑到不同系统可能返回的时间戳单位不一致(有些是以毫秒计),因此,在实际操作前需确认所获取的是秒级还是毫秒级时间戳。 对于给定的一个时间戳数值,如果该数值长度超过10位,则认为其表示的是毫秒级别的时间戳;反之则是以秒计算的时间戳[^1]。为了确保准确性,当遇到较长的时间戳时应先除以1000再进行后续处理。 下面是一段用于将时间戳转换成`HH:mm:ss`格式的小程序代码示例: ```javascript function formatSeconds(value) { let theTime = parseInt(value); let hour = Math.floor(theTime / 3600); // 计算整小时数 let minute = Math.floor((theTime % 3600) / 60); // 计算剩余分钟数 let second = (theTime % 60).toString().padStart(2,'0'); // 计算剩余秒数,并补零 if(hour !== 0){ return `${hour.toString().padStart(2,'0')}:${minute.toString().padStart(2,'0')}:${second}`; } return `${minute.toString().padStart(2,'0')}:${second}`; } // 假设有一个名为timestamp的时间戳变量存储着要被转化的数据 let timestamp = Date.now(); // 获取当前时间作为例子 if(timestamp.toString().length>10){ timestamp /= 1000; // 如果是毫秒级别的则转为秒 } console.log(formatSeconds(timestamp)); // 输出转换后的字符串形式 ``` 此函数接收一个参数value,代表待转换的时间戳值。通过简单的数学运算得出对应的小时、分钟以及秒钟数量,并最终组合成为符合要求的字符串输出。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值