如何使用Array find函数在JavaScript中返回对象
我有一个家庭作业,要求我将一个名为userID的参数传递给arrow函数。在这个函数中,我需要在名为users的数组上使用.find函数。这个find函数应该返回一个包含userID的对象。以下是完整的说明: 在上面创建一个getSelectedUser箭头函数 显示选定的用户。它应该使用userId参数并使用users集合上的Array.find函数来查找和 返回选定的用户对象。您的.find调用应采用内联方式 arrow函数并对其参数进行反结构以获取id 财产 用户是一个数组:用户=如何使用Array find函数在JavaScript中返回对象,javascript,arrays,Javascript,Arrays,我有一个家庭作业,要求我将一个名为userID的参数传递给arrow函数。在这个函数中,我需要在名为users的数组上使用.find函数。这个find函数应该返回一个包含userID的对象。以下是完整的说明: 在上面创建一个getSelectedUser箭头函数 显示选定的用户。它应该使用userId参数并使用users集合上的Array.find函数来查找和 返回选定的用户对象。您的.find调用应采用内联方式 arrow函数并对其参数进行反结构以获取id 财产 用户是一个数组:用户= [{
[{
age: 50,
weight: 55,
height: 6,
country: 'US',
name: 'Bob Manuel',
id: 'ehriuiuye'
},
{
age: 20,
weight: 80,
height: 6,
country: 'UK',
name: 'Michael Lawrence',
id: 'fjikijd'
}];
我所做的
const getSelectedUser = (userId) =>{
users.find(element => element.id === userId);
};
现在,自动平地机返回以下错误:
创建一个“getSelectedUser”函数,返回所选的“用户”
对象”。有关详细信息,请参阅说明
我创建的函数有什么问题吗?我想可能缺少的是说明中提到的“解构”。分解是将对象的选定属性指定给变量的过程。例如,如果您有一个对象
const foo = {
bar: "hi",
baz: "friend"
}
您可以通过foo.bar
和foo.baz
或使用
const {bar, baz} = foo;
这将定义两个变量bar
和baz
在您的例子中,您可以进行分解,而不是指定arrow函数的元素
参数
编辑:
正如在一条评论中指出的,您没有从getSelectedUser
函数返回任何内容。您需要执行returnuser.find(元素=>…)
或者returnuser.find({id})=>…)
编辑2:
完整代码应为:
const getSelectedUser = (userId) => {
return users.find(({id}) => id === userId);
};
或简称:
const getSelectedUser = (userId) => users.find(({id}) => id === userId);
试试这个:
const getSelectedUser=(userId)=>users.find(({id})=>id==userId)
答案将取决于您使用的语言,您忽略了识别。从赋值和示例代码中,我猜这是JavaScript(箭头函数、解构、三等号用于比较==
)1)您没有返回任何内容2)不确定JS函数末尾是否有分号,希望这有帮助-WWCI很抱歉JavaScript@Wookies-Will Code你是对的当然,什么都不返回。但是分号可以;)如果我进行解构,我将在变量中获取用户ID。我该怎么办呢?您可以用解构表达式({id})=>…
替换内联箭头函数中的元素
变量和后续的元素.id
属性访问,谢谢。我还是很困惑。销毁后如何返回对象(以获取ID)。如果你能帮我写代码,我将不胜感激。