【发布时间】:2019-02-20 19:42:38
【问题描述】:
我有一个存储不同“学生”数据的对象数组。
var pupils = [
{
id: 0,
name: 'will'
},
{
id: 1,
name: 'megan'
}
];
我想创建一个名为“findPupil”的函数,它接受三个参数:您知道的属性、您知道的值以及您要查找的属性。
假设您知道要查找的学生的 id 为 1,但您不知道他们的名字。在这种情况下,您可以这样调用函数:
var name = findPupil('id', 1, 'name'); // should now store 'Megan' as a string
这是我写的函数:
function findPupil(property, value, find) {
pupils.forEach(function(pupil) {
if(pupils[pupil][`${property}`] === value) {
return pupils[pupil][`${find}`];
}
});
}
调用此函数返回以下内容:
Error: Cannot read property 'id' of undefined
如何让这个功能发挥作用?
【问题讨论】:
-
什么是
array1 -
抱歉,复制粘贴错误
标签: javascript arrays foreach javascript-objects