0
我想抓取一个数组中的对象的内部键值,该数组本身就是数组中的一个对象。 这里是什么样子:Javascript - 抓取嵌套在对象内的对象的内部值
var books = [
{
"title": "title1",
"author": "author1",
"users": [
{
"id": 1,
"name": "Isidro"
},
{
"id": 4,
"name": "Jose Miguel"
},
{
"id": 3,
"name": "Trinidad"
}
]
},
{
"title": "title2",
"author": "author2",
"users": [
{
"id": 4,
"name": "Jose Miguel"
},
{
"id": 5,
"name": "Beatriz"
},
{
"id": 6,
"name": "Rosario"
}
]
},
我所试图做的,两件事情: 第一: 当我在HTML点击一个用户名,我想匹配的名称具有相同点击所有对象中的用户名 第二个: 显示此用户名所在的书的标题。 例如:当我点击Jose Miguel时,我想查看他阅读的2本书。
目前,我有这样的:
var btnUser = document.querySelectorAll(".individualUsers");
for (var i = 0; i < btnUser.length; i++) {
btnUser[i].addEventListener("click", function() {
var clickedUser = this.innerText
var userBooks = books
.filter(x => x.users.name.indexOf(clickedUser) > -1)
.map(x => ` <li>${x.title}</li> <li>${x.author}</li>`);
console.log(clickedUser);
});
}
我的问题是x.users.name.indexOf(clickedUser)
没有正在使用的用户名。