我有这个作业,要求我将名为userID的参数传递给箭头函数。在此函数内部,需要在称为用户的数组上使用.find函数。该查找函数应返回一个包含用户ID的对象。这是完整的说明:
在上方创建 getSelectedUser 箭头功能 displaySelectedUser 。它应该带有一个 userId 参数,并使用 users 集合上的Array .find函数来查找和 返回所选的用户对象。您的.find通话应进行内联 箭头函数并解构其参数以获得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”函数,该函数返回所选的“用户” 对象”。有关详细信息,请参见说明。
我创建的函数有什么问题吗?
答案 0 :(得分:1)
尝试一下:
<?php
答案 1 :(得分:0)
我猜想可能是说明书中提到的“破坏”。解构是将对象的选定属性分配给变量的过程。例如,如果您有一个对象
RotatingFileHandler
您可以通过const foo = {
bar: "hi",
baz: "friend"
}
和foo.bar
或使用
foo.baz
,它将定义两个变量const {bar, baz} = foo;
和bar
。
根据您的情况,您可以执行解构,而不是指定arrow函数的baz
参数。
编辑:
正如评论中指出的那样,您不会从element
函数返回任何内容。您可能需要进行getSelectedUser
或return user.find(element => ...)
修改2: 完整的代码应为:
return user.find(({id}) => ...)
或简称:
const getSelectedUser = (userId) => {
return users.find(({id}) => id === userId);
};