我希望以下列格式获取日期和时间:
yyyy.mm.dd.hh.mm.ss
| 2014.11.6.20.31.24
但是,我的代码(基于Get Current Time)提供了以下值:
y??.m?.d?.hh.mm.ss
| 114.10.4.20.31.24
这是我的代码:
var dt = new Date();
var time = dt.getHours() + "." + dt.getMinutes() + "." + dt.getSeconds();
var date = dt.getYear() + "." + dt.getMonth() + "." + dt.getDay();
alert(date + "." + time);

有人可以让我知道为什么这些奇怪的值在114.10.4
,以及如何将它们更改为我想要的?
答案 0 :(得分:2)
那是因为你需要使用
.getFullYear()
全年.getMonth()
从0开始,因此您需要添加1 .getDate()
。 .getDay()
是一周中的某一天。
var dt = new Date();
var time = dt.getHours() + "." + dt.getMinutes() + "." + dt.getSeconds();
var date = dt.getFullYear() + "." + (dt.getMonth()+1) + "." + dt.getDate();
alert(date + "." + time);

如果出于一些奇怪的原因,你只使用firefox,你可以使用
var d = new Date(),
formatted = d.toLocaleFormat('%Y.%m.%d.%H.%M.%S');
alert(formatted);
最后,您可以使用优秀的moment.js库并执行
var formatted = moment().format('YYYY.MM.DD.HH.mm.ss');
答案 1 :(得分:1)
你使用了错误的吸气剂。使用getFullYear()
代替getYear()
,getDate()
代替getDay()
。并在月份中添加1,因为它从0开始。
var dt = new Date();
var time = dt.getHours() + "." + dt.getMinutes() + "." + dt.getSeconds();
var date = dt.getFullYear() + "." + (dt.getMonth() + 1) + "." + dt.getDate();
alert(date + "." + time);
答案 2 :(得分:0)
答案 3 :(得分:0)
应使用getFullYear()
代替getYear()
和getMonth() + 1
代替getMonth()
,因为它计算的形式为0..11,有关getDay()的信息
var dt = new Date();
var time = dt.getHours() + "." + dt.getMinutes() + "." + dt.getSeconds();
var date = dt.getFullYear() + "." + dt.getMonth() + 1 + "." + dt.getDate();
alert(date + "." + time);
dt.getDay()
一周的这一天
答案 4 :(得分:0)
getDay()
方法返回星期几(从0到6)
您需要使用getDate()
来了解当天的号码(从1到31)
此外,您需要向getMonth()
添加1,因为JavaScript中的月份从0开始