导航:首页 > APP软件 > 微信时间戳怎么生成

微信时间戳怎么生成

发布时间:2023-06-12 22:07:35

微信程序——时间戳与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

❷ 微信公众号开发如何获得时间戳和随机字符串

long currentTimeMillis = System.currentTimeMillis();
DateFormat format = new SimpleDateFormat("yyyyMMddHHmm");
Date dDate = null;
try {
dDate = format.parse(String.valueOf(currentTimeMillis));
} catch (ParseException e) {
e.printStackTrace();
}
DateFormat format2 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String time = format2.format(dDate);
System.out.println(time);

阅读全文

与微信时间戳怎么生成相关的资料

热点内容
excel表格文件化乱码 浏览:986
win7无法打开隐藏文件 浏览:757
怎样把压缩文件变成空白文件 浏览:516
wokrNC和UG编程哪个好 浏览:487
爱奇艺随刻文件名 浏览:40
wps是怎么压缩文件 浏览:986
dos配置文件名 浏览:582
java软件工程师做什么 浏览:897
3dmax导出ive文件 浏览:464
数据重复性好是什么意思 浏览:166
如何查找电脑文件使用历史记录 浏览:821
linux可以运行exe的文件吗 浏览:935
库币是哪个国家的app 浏览:201
大智慧internet文件夹有哪些文件 浏览:89
编程培训课程哪个排名好 浏览:124
我的cad怎么没显示文件选项卡 浏览:952
命令行当前是哪个数据库 浏览:588
为什么appstore打开空白 浏览:574
选货车软件什么app最好 浏览:577
psv仙境传说ace如何降级版本 浏览:460

友情链接