我遇到了js中时间格式的奇怪问题
function getClockInTime() {
var now = new Date();
var hour = parseInt(now.format("HH"));
var timeString = now.format('h:MM:ss') + " " + (hour > 12 ? "PM" : "AM");
return timeString;
}
在我老板的机器上,上述功能将时间显示为小时,分钟和秒。在我的机器上,这种格式将其显示为小时,月份和秒,并且为了得到分钟,我执行h:mm:ss而不是显示小时,月份和秒。
关于为什么会发生这种情况的任何理论?我想这可能是因为我的运行AMD硬件而且他是英特尔,所以他们可以做一些不同的内部时钟。
此外,是否有一种格式化方法,所以所有机器上的时间都是小时,分钟,秒?
由于
答案 0 :(得分:0)
原来如果你使用一个名为datejs https://code.google.com/p/datejs/的javascript自定义库,它会为你解决这个问题,我只是把我的格式放在这个库附带的自定义.toString()和hh:mm中:ss在两台机器上都应该显示。
现在看起来像这样:
function getClockInTime() {
var now = new Date();
var hour = parseInt(now.format("HH"));
var timeString = now.toString('hh:mm:ss tt');
return timeString;
}
这将以am或pm输出当前时间。