Javascript 数组到HTML元素并附加到ul

Javascript 数组到HTML元素并附加到ul,javascript,html,arrays,dom,Javascript,Html,Arrays,Dom,当给定数组包含员工列表时 let name=[ {名字:'约翰',姓氏:'多伊',多布:'1970年1月1日',角色:'库克'}, {firstName:'Mary',lastName:'Jane',DOB:'11Sep2000',role:'server'}, ]; 而且#ul已经提供 无名氏 41 玛丽·简 20 我需要使其在单击姓名时返回员工的角色,以下是我的代码: 函数打印角色(用户){ console.log(user.role); } 函数getRoles(数组){

当给定数组包含员工列表时

let name=[
{名字:'约翰',姓氏:'多伊',多布:'1970年1月1日',角色:'库克'},
{firstName:'Mary',lastName:'Jane',DOB:'11Sep2000',role:'server'},
];
而且#ul已经提供

  • 无名氏 41
  • 玛丽·简 20
我需要使其在单击姓名时返回员工的角色,以下是我的代码:

函数打印角色(用户){
console.log(user.role);
}
函数getRoles(数组){
for(设i=0;i
我首先在HTML元素中使用了
createElement
,并在某个时候添加了
addEventListner
。我知道我必须在某个时候将
li
应用于
#ul
容器,但我对自己做错了什么(可能是所有事情)感到非常困惑。
我相信我正朝着正确的方向前进,但我似乎不知道如何以一种恰当的方式表达它。

您可以尝试下面的代码。如果你什么都不懂,你可以随便问

let list=[
{名字:'约翰',姓氏:'多伊',多布:'1970年1月1日',角色:'库克'},
{firstName:'Mary',lastName:'Jane',DOB:'11Sep2000',role:'server'},
];
const container=document.querySelector(“#container”);
函数renderList(列表){
list.forEach(obj=>{
const li=document.createElement('li');
常量a=document.createElement('a');
const div=document.createElement('div');
a、 innerHTML=`${obj.firstName}${obj.lastName}`;
div.innerHTML=obj.DOB;
a、 addEventListener('单击',()=>{
console.log(对象角色)
})
李.儿童(a);
李.儿童组(分区);;
容器。附加子对象(li)
})
}
渲染列表(列表)
试着这样做:

let name=[{
名字:“约翰”,
姓氏:“Doe”,
DOB:‘1970年1月1日’,
角色:“厨师”
},
{
名字:“玛丽”,
姓氏:“简”,
DOB:‘2000年9月11日’,
角色:“服务器”
},
];
获取角色(名称);
函数getRoles(数组){
const container=document.getElementById('container');
for(设i=0;i

    谢谢,但我无法更改函数getRoles(array)
    的名称,
    断言错误:预期'Joe Blow'等于'Joe Blow'
    我收到一条错误消息,似乎我需要在上添加一个类?您可以尝试像这样添加事件侦听器
    a.addEventListener(“单击“,()=>printRole(用户))
    ,因为
    addEventListener
    需要回调函数。感谢您抽出时间。但有一件事,
    AssertionError:expected''等于'John Doe'
    您能告诉我为什么会出现这个错误吗?您是在哪一行出现这个错误的?我想我们需要更多的信息来确定为什么会发生这种情况。