第11章 建立动态页面
时间页面的处理
在网页上显示当前日期
问题 将一个获取到的时间放到我们的网页上
window.οnlοad=initDate function initDate(){ var dayName=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"] var monName=["January","February", "March", "April", "May","June", "July", "August", "September","October", "November", "December"] var now=new Date() var dtString = dayName[now.getDay()] + ", " + monName[now.getMonth()] + " " + now.getDate(); document.getElementById("dtField").innerHTML = dtString; }
在这段代码中,他通过建立一个数组,然后获取当前数组的下标,之后通过各种下标,取到值
需要注意的是JavaScript 对时间的处理方式不一致
首先12个月份是从0-11开始的
还一个是星期几
星期一到六返回的数字是1-6,但是星期天的返回时0
["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]
getDay() 方法获取星期几
处理周中的日期
问题:判断一天是否是周末,并且推送不同的内容
window.οnlοad=initDate function initDate(){ var now=new Date() if(now.getDay()>0&& now.getDay()<6){ var dtString="Sorry,weekday" }else{ var dtString="Hooray,weekend" } document.getElementBy("dtFied").innerHTML=dtString }
问题:根据时间,展示不同的问候语
window.οnlοad=initDate function initDate(){ var now=new Date() document.getElementById("time").innerHTML=timeString(now.getHour()) function timeString(theHour){ if(theHour<5){ return "What are you doing up so late?"; } if (theHour < 9) { return "Good Morning!"; } if (theHour < 17) { return "No surfing during working hours!"; } return "Good Evening!"; } }
document.getElementsByTagName("*")命令是一种很方便 的技巧——星号让 JavaScript 返回一个包含页面上所有标签的数组。
substring 和subst`
-
在JS中函数声明: stringObject.substring(start,stop) start是在原字符串检索的开始位置,stop是检索的终止位置,返回结果中不包括stop所指字符.
-
substr(start,length)
js常用日期
var date =new date() //获取当前时间
getTime () 返回从1970年1月1日到至今的毫秒数
setFullYear() 设置具体的时间
toUTCstring() 将当日的日期转为字符串
getDay() 获取星期
parse() 给出一个日期/时间字符串,返回自1970.1.1的毫秒数
问题:获取两个时间的间隔天数
function dayToDays(inTime){ return (inTime.getTime()/(1000*60*60*24)) } Math.ceil(dayToDays(inDate) - dayToDays(now))
JavaScript 将日期存储为自 1970 年 1 月 1 日以来的毫秒数。为了比较两个日期,需要把它改为 自 1970 年 1 月 1 日以来的天数。首先,计算一天的毫秒数:1000(1 秒内的毫秒数)乘以 60(1 分 钟内的秒数),再乘以 60(1 小时内的分钟数),然后乘以 24(1 天内的小时数)。将 getTime()返回的 毫秒数除以这个数字,就会得到自 1970 年 1 月 1 日以来的天数。