您的当前位置:首页正文

微信小程序时间戳转日期的详解

2023-12-06 来源:站点网
导读utils/utils.jsfunction formatNumber(n) {  n = n.toString()  return n[1] ? n : '0' + n  }  /** * 时间戳转化为年 月 日 时 分 

正文:

// util.js//时间戳转换成日期时间function js_date_time(unixtime) { var dateTime = new Date(parseInt(unixtime) * 1000) var year = dateTime.getFullYear(); var month = dateTime.getMonth() + 1; var day = dateTime.getDate(); var hour = dateTime.getHours(); var minute = dateTime.getMinutes(); var second = dateTime.getSeconds(); var now = new Date(); var now_new = Date.parse(now.toDateString()); //typescript转换写法 var milliseconds = now_new - dateTime; var timeSpanStr = year + '-' + month + '-' + day + ' ' + hour + ':' + minute; return timeSpanStr;}module.exports = { js_date_time: js_date_time}

使用方法:

// 变量时间戳转换成日期  例:arr是字符串

// index.jsvar util= require("../../utils/util.js"); var arr ='1535960773000';util.js_date_time(arr);

// 数组内的时间戳属性转换成日期  例:arr是对象

// index.js var util= require("../../utils/util.js");  for (var i = 0; i < arr.length; i++) {     arr[i].datetime = util.js_date_time(arr[i].datetime ) } 

// 对象内的时间戳属性转换成日期  例:obj 是对象

// index.jsvar util= require("../../utils/util.js"); for (var i in obj) { obj[i].datetime = util.js_date_time(obj[i].datetime) }

以上所述是小编给大家介绍的微信小程序时间戳转日期详解整合,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!

小编还为您整理了以下内容,可能对您也有帮助:

微信小程序从数组中获取时间戳后怎么转换成日期

utils/utils.js

    function formatNumber(n) {  

    n = n.toString()  

    return n[1] ? n : '0' + n  

    }  

    /** 

    * 时间戳转化为年 月 日 时 分 秒 

    * number: 传入时间戳 

    * format:返回格式,支持自定义,但参数必须与formateArr里保持一致 

    */  

    function formatTime(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;  

    }  

    mole.exports = {  

    formatTime: formatTime  

    js

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

微信小程序从数组中获取时间戳后怎么转换成日期

utils/utils.js

    function formatNumber(n) {  

    n = n.toString()  

    return n[1] ? n : '0' + n  

    }  

    /** 

    * 时间戳转化为年 月 日 时 分 秒 

    * number: 传入时间戳 

    * format:返回格式,支持自定义,但参数必须与formateArr里保持一致 

    */  

    function formatTime(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;  

    }  

    mole.exports = {  

    formatTime: formatTime  

    js

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

微信小程序——时间戳与Date对象的那些事

做过web开发的小伙伴们多少会遇到时间转换问题在Chrome浏览器和Safari浏览器的不同,报错或者时间格式等等,这里我就分享一下我在开发过程中遇到的一些问题

关于时间问题,做过日历的都知道,全球化时区处理,或者时间格式,或者时间戳转化,这里我就这几种情况一一讨论

由于微信小程序的部分业务需要预定,所以会出现国外预定到国内时间会有偏差的问题,根本原因还是在于new Date(),它会获取当前系统时间,大部分手机是设置的是自动时间,所以会出现时区的偏差问题。

思考 :如果产品是某地的,那么预定时间应该为对应地的时区计算。所以需要维护定位与时区之间的关系

关于时区计算,因为我这边只用到了北京时间的情况,举个例子:

Safari浏览器中,进行 new Date("yyyy-MM-dd hh:mm:ss") 的时候,会出现报错Invalid Date,或者转换出问题的情况,原因是Safari并不支持此格式,所以需要调整格式化的方式。

ECMA-262 标准中( Date Time String Format )将日期格式规定为 YYYY-MM-DDTHH:mm:ss.sssZ ,其中, T 标识时间开始, Z 为相对于UTC(协调世界时 - International Atomic Time)的时间偏移量,可为 Z , +HH:mm 或 -HH:mm 。

思考 :要么正则替换为标准的 / 分割,要么在中间空白处加上 T ,看自己喜好

看文档是支持直接毫秒数时间戳转Date对象的,正常操作也是如此。

PS :但是在微信小程序的iOS端转过来的实际时间是UTC的时间,所以需要同步为当前时区时间,为了不影响Android的时间结果,所以通过转换2次的方式解决时间计算问题。

ECMA-262 标准来源参考: https://www.jianshu.com/p/a11196377048

将时间戳转化为日期格式

1. 将时间戳转换成日期格式:

function timestampToTime(timestamp) {

        var date = new Date(timestamp * 1000);//时间戳为10位需*1000,时间戳为13位的话不需乘1000

        Y = date.getFullYear() + '-';

        M = (date.getMonth()+1 < 10 ? '0'+(date.getMonth()+1) : date.getMonth()+1) + '-';

        D = date.getDate() + ' ';

        h = date.getHours() + ':';

        m = date.getMinutes() + ':';

        s = date.getSeconds();

        return Y+M+D+h+m+s;

    }

    timestampToTime(1403058804);

    console.log(timestampToTime(1403058804));//2014-06-18 10:33:24

  注意:如果是Unix时间戳记得乘以1000。比如:

2. 将日期格式转换成时间戳:

var date = new Date('2014-04-23 18:55:49:123');

    // 有三种方式获取

    var time1 = date.getTime();

    var time2 = date.valueOf();

    var time3 = Date.parse(date);

    console.log(time1);//1398250549123

    console.log(time2);//1398250549123

    console.log(time3);//1398250549000

站点网还为您提供以下相关内容希望对您有帮助:

微信小程序从数组中获取时间戳后怎么转换成日期

* 时间戳转化为年 月日时分秒 * number: 传入时间戳 * format:返回格式,支持自定义,但参数必须与formateArr里保持一致 */ function formatTime(number,format) { var formateArr = ['Y','M','D','h','m','s']...

微信小程序——时间戳与Date对象的那些事

思考 :要么正则替换为标准的 / 分割,要么在中间空白处加上 T ,看自己喜好 看文档是支持直接毫秒数时间戳转Date对象的,正常操作也是如此。PS :但是在微信小程序的iOS端转过来的实际时间是UTC的时间,所以需要同步为当前...

将时间戳转化为日期格式

1. 将时间戳转换成日期格式:function timestampToTime(timestamp) {         var date = new Date(timestamp * 1000);//时间戳为10位需*1000,时间戳为13位的话不需乘1000   &amp;...

详解微信小程序获取当前时间及日期的方法

首先,在要获取时间的.js文件中加载util.js文件 然后在onload方法中,调用util.js中的formatTime方法获取当前时间 //获取当前时间 // 调用函数时,传入new Date()参数,返回值是日期和时间 var TIME = util.formatTime(ne...

时间戳转换为日期格式

// 时间戳转换成日期格式 export const getTimeData = function(time){ let date = new Date(time);let Y = date.getFullYear();let M = date.getMonth()+1 &lt; 10 ? '0'+(date.getMonth()+1) : date....

js怎么把时间戳转换为日期格式

使用Date可以将毫秒时间戳转为Date对象,然后可以根据Date的方法生成需要的日期格式.如: new Date(1432269413352)你好,很简单,直接使用Date对象就可以了。var d = new Date(1432185095381); 如果时间戳是字符串,需要先...

js时间戳怎么转成日期格式

js时间戳转日期格式 formatDate javascript 时间戳自定义格式转换,支持年月日时分秒等多种形式组合的日期和时间。使用示例 年、月、日、时、分、秒 var date = jutils.formatDate(new Date(1533686888*1000),"YYYY-MM-DD...

微信小程序 时间戳距当前时间的长度

注意:传入的dateTimeStamp时间戳以秒计时。如你想传以毫秒计时的值时先除1000 getDateDiff:function (dateTimeStamp) {   var minute =  60;  var hour = minute * 60;  var day = hour ...

vue.js怎样将时间戳转化为日期格式

1、首先需要根据图示代码创建HTML文档,并创建JS标记。2、然后需要根据图示代码new Date()创建日期对象。3、然后需要根据图示代码以毫秒为单位的时间戳,设置日期对象。4、然后需要根据图示代码打印设置后的日期。5、保存文件,...

如何在js中将时间戳转换为时间格式

如何在js中将时间戳转换为时间格式 将时间戳转换成日期格式: 简单的一句程式码 var date = new Date(时间戳); 获取一个时间物件 注意:如果是uinx时间戳记得乘于1000。比如php函式time()获得的时间戳就要乘于1000...

本文如未解决您的问题请添加抖音号:51dongshi(抖音搜索懂视),直接咨询即可。

精彩推荐

更多阅读

Top