时钟和日期javascript
我正在创建一个JS时钟/日期。我以前有时间完美地工作,然后我决定在我的时钟(日期)上增加更多。现在我不明白为什么它不起作用。如果有人能给我提示或建议如何修复它,我将不胜感激时钟和日期javascript,javascript,Javascript,我正在创建一个JS时钟/日期。我以前有时间完美地工作,然后我决定在我的时钟(日期)上增加更多。现在我不明白为什么它不起作用。如果有人能给我提示或建议如何修复它,我将不胜感激 function timedate() { var currentTime = new Date(); var hours = currentTime.getHours(); var minutes = currentTime.getMinutes(); var dn="PM"
function timedate()
{
var currentTime = new Date();
var hours = currentTime.getHours();
var minutes = currentTime.getMinutes();
var dn="PM"
var d = currentTime.getDate(); <--
var day = (d < 10) ? '0' + d : d;
var m = currentTime.getMonth() + 1; <--
var month = (m < 10) ? '0' + m : m;
var yy = currentTime.getYear(); <--
var year = (yy < 1000) ? yy + 1900 : yy;
if (hours<12)
{
dn="AM"
}
if (hours>12)
{
hours=hours-12
}
if (hours==0)
{
hours=12
}
if (minutes<=9)
{
minutes="0"+minutes
}
var clocklocation = document.getElementById('timedate');
clocklocation.innerHTML = "" +hours+":"+minutes+dn+""+day + "/" + month + "/" + year;
setTimeout("timedate()", 1000);
}
timedate();
函数timedate()
{
var currentTime=新日期();
var hours=currentTime.getHours();
var minutes=currentTime.getMinutes();
var dn=“PM”
var d=currentTime.getDate();您的代码可以正常工作,它只是不可见,因为您没有显示秒数
也改变
setTimeout("timedate()", 1000);
到
因为这是不推荐的
并移除(“0”+num).slice(-2);
常数时间=()=>{
const currentTime=新日期();
让hours=currentTime.getHours();
const minutes=pad(currentTime.getMinutes());
const seconds=pad(currentTime.getSeconds());
const d=currentTime.getDate();
施工日=pad(d);
const month=pad(currentTime.getMonth()+1);
const yy=currentTime.getFullYear();
让dn=“PM”
如果(小时=12)小时-=12;
如果(小时=0)小时=12;
小时=pad(小时);
document.getElementById('timedate')。innerHTML=“”+
小时数+“:”+
分钟+“:”+
秒+dn+“”+
日+“/”+月+“/”+yy;
}
addEventListener(“加载”,函数(){
设置间隔(时间日期,1000);
});
如果使用setTimeout(timedate,1000)
而不是当前的魔术字符串版本1设置超时
1我还冒昧地在代码中添加了秒数,以使时钟明显更新。当然,您还需要删除
您所说的“它不工作”是什么意思?它抛出了一个错误吗?我希望这些位我也是:)但是我先做了是的-在我写我的之前,我看不到你的帖子;)事实上神奇字符串版本确实有效,不推荐,但有效
setTimeout(timedate, 1000);
timedate();
setInterval(timedate,1000)