gpt4 book ai didi

javascript - 如何从必须通过测试的新数组中包含对象的数组返回特定​​值?

转载 作者:行者123 更新时间:2023-12-03 00:29:45 25 4
gpt4 key购买 nike

您好,我正在尝试找到解决方案,但在我自己的研究中找不到正确的答案,希望有人可以帮助我解决我的问题。该任务要求我必须编写一个函数,在新数组中返回 16 岁或以上的每个人的姓名。目标是编写一个在我的示例中返回的函数: ['Jane', 'Jack']

<小时/>
function onlyAdult(obj) {

}


const examplePeopleArray = [
{ name: 'John', age: 15 },
{ name: 'Jane', age: 16 },
{ name: 'Jack', age: 17 }
];

console.log(onlyAdult(examplePeopleArray));

<小时/>

我尝试使用 for 循环来管理任务,该循环遍历数组并连接 if 语句,但这种方式不起作用。之后,我尝试使用 every()、filter()、forEach()、map()、some() 为我的任务找到正确的方法,但这些方法实际上都不适合我的任务。

function onlyAdult(obj) {
for (i = 0; i < obj.length; i++) {
if (obj[0].age >= 16) {
return obj[0].age;
} else if (obj[1].age >= 16) {
return obj[1].age;
} else if (obj[2].age >= 16) {
return obj[2].age;
}
}
}

我知道我的代码是错误的,也知道我尝试解决它的方式是错误的,如果有人可以帮助我,我将非常感激。

最佳答案

您可以先使用 .filter() 过滤数组,然后使用 .map() 仅获取所需的属性值。

const data = [
{ name: 'John', age: 15 },
{ name: 'Jane', age: 16 },
{ name: 'Jack', age: 17 }
];

const result = data.filter(({ age }) => age >= 16).map(({ name }) => name);

console.log(result);

引用文献:

关于javascript - 如何从必须通过测试的新数组中包含对象的数组返回特定​​值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53922723/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com