編程(Programming)是編定程序的中文簡(jiǎn)稱(chēng),就是讓計(jì)算機(jī)代碼解決某個(gè)問(wèn)題,對(duì)某個(gè)計(jì)算體系規(guī)定一定的運(yùn)算方式,使計(jì)算體系按照該計(jì)算方式運(yùn)行,并最終得到相應(yīng)結(jié)果的過(guò)程。為了使計(jì)算機(jī)能夠理解(understand)人的意圖,人類(lèi)就必須將需解決的問(wèn)題的思路、方法和手段通過(guò)計(jì)算機(jī)能夠理解的形式告訴計(jì)算機(jī),使得計(jì)算機(jī)能夠根據(jù)人的指令一步一步去工作,完成某種特定的任務(wù)。這種人和計(jì)算體系之間交流的過(guò)程就是編程。 【實(shí)例名稱(chēng)】 JS計(jì)算某天是星期幾 【實(shí)例描述】 用戶(hù)任意指定一個(gè)日期,程序正確地判斷此日期是一周中的第幾天。此功能一般用在萬(wàn)年歷或日志查詢(xún)模塊中。 【實(shí)例代碼】 <html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>標(biāo)題頁(yè)-本站(www.xue51.com)</title>
</head>
<body>
<SCRIPT LANGUAGE="LiveScript">
function checkNum(str, min, max) { //檢測(cè)輸入的數(shù)值
if (str == "") {
alert("請(qǐng)輸入有效的值.");
return false;
}
for (var i = 0; i < str.length; i++) {
var ch = str.substring(i, i + 1);
if (ch < "0" || ch > "9") {
alert("請(qǐng)輸入數(shù)值.");
return false;
}
}
var val = parseInt(str, 10);
if ((val < min) || (val > max)) {
alert("請(qǐng)輸入數(shù)值從 1 到 "+max+".");
return false;
}
return true;
}
function pushbutton(form){
//檢查年月日的有效性
if ((checkNum(form.day.value,1,31)) &&
(checkNum(form.month.value,1,12)) &&
(checkNum(form.year.value,0,2500))){
var cur_day = parseInt(form.day.value,10);
//獲取日
var cur_month = parseInt(form.month.value,10);
//獲取月
var cur_year = parseInt(form.year.value,10);
//獲取年
}
getDayOfWeek(cur_year+"-"+cur_month+"-"+cur_day);
//調(diào)用判斷星期幾的方法
}
function getDayOfWeek(dayValue){
var day = new Date(Date.parse(dayValue.replace(/-/g, '/')));
//將日期值格式化
var today = new Array("星期日","星期一",
"星期二","星期三","星期四","星期五","星期六");
//創(chuàng)建星期數(shù)組
alert( today[day.getDay()])
//返一個(gè)星期中的某一天,其中0為星期日
}
</SCRIPT>
<FORM NAME = "calDay">
<PRE><B>日:</B>
<INPUT TYPE="num" name="day" onChange="if
(!checkNum(this.value, 1, 31)){this.focus();this.select();}
else {}" size=10 value="">
<B>月:</B>
<INPUT TYPE="num" name="month" onChange="if
(!checkNum(this.value, 1, 12)){this.focus();this.select();}
else {}" size=10 value="">
<B>年:</B>
<INPUT TYPE="num" name="year" onChange="if
(!checkNum(this.value, 0, 2500)){this.focus();this.select();} else {}"
size=10 value="">
<INPUT TYPE="button" name="Find_Out" value="計(jì)算星期幾"
onclick="pushbutton(this.form)"></PRE>
</FORM>
</body>
</html>
【運(yùn)行效果】  【難點(diǎn)剖析】 本例的重點(diǎn)是“getDayOfWeek”方法.其中使用了Date對(duì)象的“getDay”方法來(lái)獲取當(dāng)前日期是一周中的第幾天。此處要注意“getDay”和“getDate”方法的區(qū)別: “gatDate”方法獲取一月中的第幾天,而“getDay”獲取一周中的第幾天。 【源碼下載】 為了JS代碼的準(zhǔn)確性,請(qǐng)點(diǎn)擊:計(jì)算某天是星期幾 進(jìn)行本實(shí)例源碼下載
使用編程語(yǔ)言寫(xiě)的程序,由于每條指令都對(duì)應(yīng)計(jì)算機(jī)一個(gè)特定的基本動(dòng)作,所以程序占用內(nèi)存少、執(zhí)行效率高。 |