【发布时间】:2016-07-24 05:51:41
【问题描述】:
当我运行这段代码时,在 Chrome 的源代码工具中,它显示第 7 行的 number = undefined (groceryList.forEach(function(number) {)。参数正在正确传递,如果我执行 console.log对于它正确显示的每个项目。与注释掉的 .map 部分有相同的问题,它与 foreach 执行相同的操作。
谁能告诉我我做错了什么?
//BUSINESS LOGIC
var alphabatize = function(item1,item2,item3,item4){
groceryList = [item1,item2,item3,item4];
groceryList.sort();
upperGroceryList = []
groceryList.forEach(function(number) {
console.log(number);
upperGroceryList.push(number.toUpperCase());
});
/* upperGroceryList = groceryList.map(function(grocery) {
console.log(grocery);
return grocery.toUpperCase();
}); */
return groceryList;
return upperGroceryList;
};
// FRONT END
$(document).ready(function() {
$("form#items-form").submit(function(event) {
event.preventDefault();
var item1 = $("input#item1").val();
var item2 = $("input#item2").val();
var item3 = $("input#item3").val();
var item4 = $("input#item4").val();
alphabatize(item1,item2,item3,item4);
upperGroceryList.forEach(function(currentItem) {
$("#display-list ul").append("<li>" + currentItem + "</li>");
});
});
})
【问题讨论】:
标签: javascript jquery foreach