[英]Refactoring methods in Javascript (adding / deleting items from an array)
我遇到了一個問題,我必須重構下面有幾個錯誤的代碼:
function thingsToBuy() {
var list = [
"milk",
"bread",
"bananas"
];
return {
removeItem: function(name) {
list.filter(item => item === name);
},
addItem: function() {
return list.push();
},
getList: function(list) {
return list;
}
};
}
到目前為止,我有這個:
function thingsToBuy() {
let list = [
"milk",
"bread",
"bananas"
];
return {
removeItem: function(name) {
for(let i = 0; i < list.length; i++) {
if(list[i] === name)
return list.splice(i, 1)
}
},
addItem: function(item) {
list.push(item);
},
getList: function() {
return list;
}
};
}
我是否遺漏了什么或者我實施了什么錯誤? 任何反饋將不勝感激!
解決方案:
function thingsToBuy() {
var list = [
"milk",
"bread",
"bananas"
];
return {
removeItem: function(name) {
list = list.filter(item => item !== name);
return list;
},
addItem: function(item) {
list.push(item);
return list;
},
getList: function() {
return list;
}
};
}
這是一個基本練習,看看您是否了解 JS 的工作原理。 function 為您提供了一些改變列表變量的方法。 您應該閱讀有關 Array.filter、Array.push 的更多信息以查看它們的輸入和 output。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.