2012-07-05 115 views
1

我在網站上發現了一些代碼,並一直在修補它。它涉及一些功能,用於從數組中添加和刪除學生(添加代碼如下),將其添加到值字段中。但是我無法弄清楚爲什麼我們需要這些額外的代碼。array.push的正確編碼

這裏是js代碼:

var students = ['Paulie', 'Nicole', 'Kevin', 'Mare']; 
function addClick(){ 
    var addRemove = document.getElementById('addRemoveStudent'); 
    var studentsBox = document.getElementById('studentsBox') 
    students.push(addRemove.value); 
    addRemove.value = ''; 
    studentsBox.value = students.join(', '); 
} 

我的問題是:我們爲什麼需要addRemove.value = '';線?我已經測試它沒有這個代碼,它仍然正常工作。有我們需要的原因嗎?

我可以發送更多的代碼,包括HTML,但沒有什麼壓倒任何人的音量。

非常感謝! -Anthony

回答

2

沒有必要。我想在語義上,它意味着在更換值之前首先清除addRemove框。

2

它是可選的,但它只是清除文本框,以便用戶可以輸入一個全新的值,如果他們想再次運行該功能。

+0

ahhhhh,謝謝大衛....這解釋了它! – codetinkerer 2012-07-06 12:25:02

2

要清除addRemoveStudent(我認爲它是一個input type="text")的值只是爲了它,它不需要在數組中。只是爲了清除該控件的價值。

+0

就是這樣......當我之前測試時忽略了 - 謝謝! – codetinkerer 2012-07-06 12:28:16

2

推測addRemoveinput元素。將input元素的value屬性設置爲空字符串''表示輸入已清空:其中沒有文本。

我的猜測是,當單擊按鈕時會運行此功能,因此它會向陣列中添加新學生,使用正確的數據更新studentsBox字段,並清除輸入元素,以便您可以添加更多希望這樣做。