我在考试中遇到了这个问题,但我弄错了,我一直在尝试通过MDN Web文档进行最佳阅读,但是学习JavaScript仅一周的时间,我不知道自己在寻找什么。 我从考试中可以回想起,这个虚构的状态只有15岁以上的孩子可以成为保姆。我使用了“ .find()”,我只能产生一个人,它给了我整个对象,他们只想要这个名字。给了一天半的时间自己找到答案,但我迷路了。帮助!
如果您也有链接,以便我可以阅读更多有关此内容,这将对您有所帮助,因为其他学生说他们有相似的年龄,他们要求他们平均年龄。数组和对象让我已经想把我的头撞在墙上。
function legalBabysitter(sitters){
};
/*Do not modify anything below this line*/
const babysitterArray = [
{name: 'Peter', age: 13},
{name: 'Paul', age: 15},
{name: 'Mary', age: 17}
];
console.log(legalBabysitter(babysitterArray)); // should produce [Paul, Mary]
答案 0 :(得分:0)
您可以使用reduce
这里的想法是
15
,而不是在op中添加姓名
function legalBabysitter(sitters){
return sitters.reduce((op,inp)=>{
if(inp.age >= 15){
op.push(inp.name)
}
return op
},[])
};
/*Do not modify anything below this line*/
const babysitterArray = [
{name: 'Peter', age: 13},
{name: 'Paul', age: 15},
{name: 'Mary', age: 17}
];
console.log(legalBabysitter(babysitterArray)); //
答案 1 :(得分:0)
您可以使用拟合器并像这样return sitters.filter(c=>c.age >= 15).map(c=>c.name);
function legalBabysitter(sitters){
return sitters.filter(c=>c.age >= 15).map(c=>c.name);
};
/*Do not modify anything below this line*/
const babysitterArray = [
{name: 'Peter', age: 13},
{name: 'Paul', age: 15},
{name: 'Mary', age: 17}
];
console.log(legalBabysitter(babysitterArray)); // should produce [Paul, Mary]
答案 2 :(得分:0)
如果只需要考试,可以使用for循环,这很清楚。
function legalBabysitter(sitters){
var result = [];
for(var i =0; i < sitters.length; i ++){
if(sitters[i].age >= 15){
result.push(sitters[i].name);
}
}
return result;
};
function legalBabysitter(sitters){
var result = [];
for(var i =0; i < sitters.length; i ++){
if(sitters[i].age >= 15){
result.push(sitters[i].name);
}
}
return result;
};
/*Do not modify anything below this line*/
const babysitterArray = [
{name: 'Peter', age: 13},
{name: 'Paul', age: 15},
{name: 'Mary', age: 17}
];
console.log(legalBabysitter(babysitterArray)); // should produce [Paul, Mary]
答案 3 :(得分:0)
const babysitterArray = [
{name: 'Peter', age: 13},
{name: 'Paul', age: 15},
{name: 'Mary', age: 17}
];
function legalBabysitter(sitters){
return sitters.filter(_ => _.age > 14).map(_ => _.name)
};
console.log(legalBabysitter(babysitterArray))
答案 4 :(得分:0)
如果您不知道.filer和.reduce,则可以通过.forEach做到。
const babysitterArray = [
{name: 'Peter', age: 13},
{name: 'Paul', age: 15},
{name: 'Mary', age: 17}
];
function legalBabysitter(sitters){
let target = [];
sitters.forEach(_ => {
if (_.age > 14) target.push(_.name)
})
return target;
};
console.log(legalBabysitter(babysitterArray))