我知道某个UTC的值,例如1363737600000,我怎么得到这个值对应的本地时间,如2013-2-20
题目的问题描述修改一下:
//形如这种,应该叫做unix时间戳,
1363737600000
//形如这种,我们称之为ISO-8601格式的时间
2017-09-28T16:00:00Z
一般跨时区的应用,数据库中都是存储这两种格式化的时间,前端根据自己所在的时区展示对应的本地时间
把unix时间戳格式化为本地时间,推荐使用moment.js
moment.unix(1318781876).format('YYYY-MM-DD')
把一个ISO时间根据时区转换,推荐使用使用moment.js
//demo
var date = '2017-09-28T16:00:00Z';
var timezone = '"Asia/Shanghai';
moment(date).tz(timezone).format('YYYY-MM-DD hh:mm:ss');
如果是在微信小程序中使用,你需要先去moment官方下载moment-timezone-with-data.js这个文件到你的小程序应用中
const moment = require("./moment-timezone-with-data");
var date = '2017-09-28T16:00:00Z';
var timezone = '"Asia/Shanghai';
moment(date).tz(timezone).format('YYYY-MM-DD hh:mm:ss');
如果你还想获取所有可供选择的时区,推荐使用moment.js
moment.tz.names();
参考
moments.js http://momentjs.com/timezone/
时间戳 转换成 日期 么…… toLocaleString()
修改格式再连一个replace() 方法
参考
http://blog.csdn.net/wust_star/articl...
http://www.w3school.com.cn/js/jsref_o...
http://www.w3school.com.cn/js/jsref_r...
鄙人新手。再深入就不知道了。。
8 回答4.6k 阅读✓ 已解决
6 回答3.3k 阅读✓ 已解决
5 回答2.8k 阅读✓ 已解决
5 回答6.3k 阅读✓ 已解决
4 回答2.2k 阅读✓ 已解决
4 回答2.7k 阅读✓ 已解决
3 回答2.4k 阅读✓ 已解决