我有一个unix时间戳。我想将其渲染为UTC时间
在JS控制台中:
var a = new Date();
var res = a.getUTCDay()+ '-' + a.getUTCMonth() + '-' + a.getUTCFullYear();
res;
结果是“3-11-2013”,但'a'变量的值是“Wed,04 Dec 2013 16:28:03 GMT”
有什么问题?
答案 0 :(得分:7)
有什么问题?
getUTCDay
返回星期几,而不是月中的某天:
getUTCDay()
方法根据通用时间返回指定日期的星期几,其中0代表星期日。
getUTCMonth
返回月份,0基于:
getUTCMonth
返回的值是0到11之间的整数,对应于月份。 1月为0,2月为1,3月为2,依此类推。
您想要使用.getUTCDate
并将+1
添加到.getUTCMonth
的返回值:
var res = [a.getUTCDate(), a.getUTCMonth() + 1, a.getUTCFullYear()].join('-');
答案 1 :(得分:5)
getUTCDay()
和getUTCMonth()
都是基于索引的(以0开头),您需要+1主题才能获得“真实”值
答案 2 :(得分:0)
除非您的代码库非常小,否则我会避免使用这些糟糕的原生JS日期格式化函数,只需导入Moment.js。