JS实现12小时制和24小时制的转换。
表示时间的方式有24小时制和12小时制。如果是12小时制的时间,通常显示“上午”或“下午”。
function timeType() {
if (document.form.showTimeType[0].checked) {
//判断选择的是哪个类型-24小时就返回true
return true
}
return false
}
function showTheHours(theHour) {
if (timeType() || (theHour >0 &&theHour <13)) {
//如果时间在12小时内
return (theHour)
}
if (theHour == 0) {
//如果时间等于0
return (12)
}
return (theHour-12)
//如果时间大于12,需要减去12-针对12小时制
}
function showZeroFilled(inValue) {
if (inValue >9) {
//设置分钟数的两位数显示,不足两位补0
return "" + inValue
}
return "0" + inValue
}
function showAmPm() {
//显示上午或下午的方法
if (timeType()) {
return ("")
}
if (now.getHours() <12) {
//判断日期,显示12小时制的中文提示
return (" 上午")
}
return (" 下午")
}
function showTheTime() {
//显示时间的方法
now = new Date
//获取当前时间
document.form.showTime.value = showTheHours(now.getHours())
+ ":" + showZeroFilled(now.getMinutes()) + ":" +
showZeroFilled(now.getSeconds()) + showAmPm()
setTimeout("showTheTime()",1000)
//每隔1秒更新时间
}
</script>
</head>
<BODY onLoad="showTheTime()">
<center><form name=form>
<input type=text name=showTime size=11><p>
<input type=radio name=showTimeType checked>24小时<br>
<input type=radio name=showTimeType>12小时<br>
</form></center></body>
</html>
JS获取的是本地电脑的日期时间格式,每个人电脑设置不一样,不一定都是24小时时间格式的。不过你可以用JS代码写输出成24小时时间格式。代码如下:当前时间为:<span id="now"></span>
<script type="text/javascript">
//动态显示年月日时间和周几【凌陈亮(QQ:57404811)】
//显示当前时间的对象ID
gw_now('now')
function gw_now(id){
var obj=window.document.getElementById(id)
var date=new Date()
var year=date.getFullYear()
var month=gw_now_addzero(date.getMonth()+1)
var day=gw_now_addzero(date.getDate())
var hour=gw_now_addzero(date.getHours())
var minute=gw_now_addzero(date.getMinutes())
var second=gw_now_addzero(date.getSeconds())
switch (date.getDay()) {
case 0:week="星期天"break
case 1:week="星期一"break
case 2:week="星期二"break
case 3:week="星期三"break
case 4:week="星期四"break
case 5:week="星期五"break
case 6:week="星期六"break
}
obj.innerHTML=year + "-" + month + "-" + day + " " + hour + ":" + minute + ":" + second + " " + week
setTimeout("gw_now('" + id + "')",1000)
}
function gw_now_addzero(temp){
if(temp<10) return "0" + temp
else return temp
}
</script>