【发布时间】:2021-04-09 14:29:08
【问题描述】:
我需要过滤数据集以在函数中查找与给定条件匹配的数据
例如:
输入/输出示例
findMyCampsites(campgrounds, 'ocean', 8) //-> [1]
findMyCampsites(campgrounds, 'forest', 4) //-> [18]
findMyCampsites(campgrounds, 'forest', 6) //-> 'Sorry, no campsites with that view are available to host your party'
这是给我的数据集
let 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 }
];
我试过了
function findMyCampsites(campgrounds, location, groupSize) {
var available = []
for (var i = 0; i < campgrounds.length; i++) {
if (campgrounds[i].isReserved == false && campgrounds[i].view == location) {
available.push(campgrounds[i].number)
}
}
return available
}
我的问题是每次我添加 partySize 变量时,无论是通过 else/if 条件语句还是直接添加 else 语句,我总是在输出,我不知道我做错了什么。
诚然,我对此很陌生,所以如果我不清楚添加屏幕截图以帮助解决该屏幕截图,我深表歉意:
【问题讨论】:
-
How do I ask a good question? -> 请勿发布代码、数据、错误消息等的图片 - 复制或键入问题中的文本。请保留将图像用于图表或演示渲染错误,这些无法通过文本准确描述的事情。”
-
所以,如果我理解正确,您想要创建一个函数来查找在 location 中传递了 view 的露营地,并且 传递的 i>groupSize 小于或等于 partySize...
-
这是我的确切目标 [写一个函数 findMyCampsites.给定一个露营地数组,一种视图类型为字符串,派对人数为数字,返回一个包含匹配露营地的露营地编号的数组。]
-
你能解释更多吗?
findMyCampsites函数看起来不错,基于您的预期输出。
标签: javascript arrays function