Javascript 我试图使用for循环将一个对象键值添加到一个空数组中进行筛选,但我一直得到一个空数组 function FindMyCamps(营地、视图、聚会){ 让matchingCampsites=[] 对于(设i=0;i
你需要在环路结束后返回,而不是在环路内Javascript 我试图使用for循环将一个对象键值添加到一个空数组中进行筛选,但我一直得到一个空数组 function FindMyCamps(营地、视图、聚会){ 让matchingCampsites=[] 对于(设i=0;i,javascript,arrays,object,Javascript,Arrays,Object,你需要在环路结束后返回,而不是在环路内 function FindMyCamps(营地、视图、聚会){ 让matchingCampsites=[] 对于(设i=0;i=搜索条件不太有效的露营地,对于findMyCampsites(露营地,'ocean',4))我得到了[5]而不是[1,5],findMyCampsites(露营地,'forest',3)我得到了“抱歉,没有露营地…”而不是[18],findMyCampsites(露营地,'desert',2)返回了“抱歉,没有露营地…”的预期输
function FindMyCamps(营地、视图、聚会){
让matchingCampsites=[]
对于(设i=0;i 如果(营地[i].partySize你需要在环路结束后返回,而不是在环路内
function FindMyCamps(营地、视图、聚会){
让matchingCampsites=[]
对于(设i=0;i if(campgrounds[i].partySize您在循环的第一次迭代中返回,即使您没有向数组中添加任何内容。并且在遍历整个数组之前返回错误。另外……您不想查找具有partySize>=搜索条件不太有效的露营地,对于findMyCampsites(campgrounds,'ocean',4))我得到了[5]而不是[1,5],findMyCampsites(露营地,'forest',3)我得到了“对不起,没有露营地…”而不是[18],findMyCampsites(露营地,'desert',2)返回了预期的输出“很抱歉,没有露营地……您在循环的第一次迭代中返回,即使您没有向数组中添加任何内容。并且在遍历整个数组之前返回错误。另外……您不想查找具有partySize>=搜索条件不太有效的露营地,对于findMyCampsites(露营地,'ocean',4))我得到了[5]而不是[1,5],findMyCampsites(露营地,'forest',3)我得到了“抱歉,没有露营地…”而不是[18],findMyCampsites(露营地,'desert',2)返回了“抱歉,没有露营地…”的预期输出。。。。。。
function findMyCampsites(campgrounds, view, partySize) {
let matchingCampsites = []
for (let i = 0; i < campgrounds.length; i++) {
if (campgrounds[i].isReserved === false) {
if (campgrounds[i].view === view) {
if (campgrounds[i].partySize <= partySize) {
matchingCampsites.push(campgrounds[i].number)
}
return matchingCampsites
} else {
return "Sorry, no campsites with that view are available to host your party"
}
}
}
}
const campgrounds = [
{ number: 1, view: 'ocean', partySize: 8, isReserved: false },
{ number: 5, view: 'ocean', partySize: 4, isReserved: false },
{ number: 12, view: 'ocean', partySize: 4, isReserved: true },
{ number: 18, view: 'forest', partySize: 4, isReserved: false },
{ number: 23, view: 'forest', partySize: 4, isReserved: true }
];