編程(Programming)是編定程序的中文簡稱,就是讓計算機代碼解決某個問題,對某個計算體系規定一定的運算方式,使計算體系按照該計算方式運行,并最終得到相應結果的過程。為了使計算機能夠理解(understand)人的意圖,人類就必須將需解決的問題的思路、方法和手段通過計算機能夠理解的形式告訴計算機,使得計算機能夠根據人的指令一步一步去工作,完成某種特定的任務。這種人和計算體系之間交流的過程就是編程。 【實例名稱】 JS代碼實現手動調整的列表框 【實例描述】 列表框用來顯示一組相似的信息,本例學習如何動態實現列表框內容的添加、刪除、上移和下移。 【實例代碼】 <script language="javascript">
function move(listItem,listObj) {
//列表項添加的方法
var i = 0;
if(listItem.value != "") {
//如果列表項不為空
var newOp = new Option();
//創建一個列表項
newOp.value = listItem.value;
//設置列表項的值
newOp.text = listItem.value;
//設置列表項的文本
listObj.options[listObj.options.length] = newOp;
//添加新項到列表框中
listItem.value = "";
}
} function remove(listObj) {
//列表框的刪除方法
for(var i=0; i<listObj.options.length; i++) {
if(listObj.options[i].selected &&
listObj.options[i] != "") {
listObj.options[i].value = "";
//清除選定項的值
listObj.options[i].text = "";
//清除選定項的文本
}
}
delAfter(listObj);
//刪除后的排序處理
}
function delAfter(alistObj) {
for(var i = 0; i < alistObj.options.length; i++) {
if(alistObj.options[i].value == "") {
//值為空的會被清除
for(var j = i; j < alistObj.options.length - 1; j++) {
alistObj.options[j].value = alistObj.options[j + 1].value;
//重新排列順序
alistObj.options[j].text = alistObj.options[j + 1].text;
}
var ln = i;
break;
}
}
if(ln < alistObj.options.length) {
alistObj.options.length -= 1;
delAfter(alistObj);
}
}
function Moveup(listObj) {
//將列表項往上移動
for(var i = 0; i < listObj.options.length; i++) {
//遍歷列表項
if (listObj.options[i].selected && listObj.options[i] != ""
&& listObj.options[i] != listObj.options[0]) {
var tmpval1 = listObj.options[i].value;
//獲取當前項的值
var tmpval12 = listObj.options[i].text;
//獲取當前項的文本
listObj.options[i].value = listObj.options[i - 1].value;
//獲取上一項的值
listObj.options[i].text = listObj.options[i - 1].text
//獲取上一項的文本
listObj.options[i-1].value = tmpval1;
//實現上下值的互換
listObj.options[i-1].text = tmpval12;
//實現上下文本的互換
}
}
}
function Movedown(listObj) {
//將列表項往下移動
for(var i = 0; i < listObj.options.length; i++) {
if (listObj.options[i].selected && listObj.options[i] !=
"" && listObj.options[i+1] != listObj.options[listObj.options.length])
{
var tmpval1 = listObj.options[i].value;
//獲取當前項的值
var tmpval12 = listObj.options[i].text;
//獲取當前項的文本
listObj.options[i].value = listObj.options[i+1].value;
//獲取下一項的值
listObj.options[i].text = listObj.options[i+1].text
//獲取下一項的文本
listObj.options[i+1].value = tmpval1;
//實現上下值的互換
listObj.options[i+1].text = tmpval12;
//實現上下文本的互換
}
}
}
</script>
【運行效果】

【難點剖析】 本例的重點是對列表框的遍歷。當添加新項到列表框時,通過創建新。ption元素的方式添加項。當刪除選項時,先設置選項的值為空,然后以遍歷的方式將值為空的項刪除。上移和下移的方法都是通過遍歷列表框,然后進行上下選項值的互換。 【源碼下載】 本實例JS代碼下載
使用編程語言寫的程序,由于每條指令都對應計算機一個特定的基本動作,所以程序占用內存少、執行效率高。 |