gpt4 book ai didi

javascript - 如何使用 _.where(list,properties) 获取内部数组作为属性?

转载 作者:行者123 更新时间:2023-12-03 03:34:57 25 4
gpt4 key购买 nike

我的 JSON 结构如下

var listOfPlays = classRoom: [
{
title: "Dollhouse",
femaleLead: true,
student: [
{ name: "Echo", role: "doll" },
{ name: "Topher", role: "mad scientist" }
]
},
{
title: "Dr. Horrible's Sing-Along Blog",
student: [
{ name: "Billy", role: "mad scientist" },
{ name: "Penny", role: "love interest" }
]
}
]

我了解 Underscore.js 中 _.where 的基本信息,它会查看列表中的每个值,返回包含属性中列出的所有键值对的所有值的数组。

例如 _.where(listOfPlays, {title: "Dollhouse"}); 这将返回一个标题为“Dollhouse”的对象,但是我如何获得基于 < strong>student 数组的值?来自listOfPlays

我正在寻找类似的东西:

_.where(listOfPlays  , {student: [name : "Echo"]});**

最佳答案

您正在寻找的 _.where(listOfPlays , {student: [name : "Echo"]}); 在新版本中不再起作用。

您可以使用:

_.filter查看列表中的每个值,返回通过真值测试(谓词)的所有值的数组

_.some如果列表中的任何值通过谓词真值测试,则返回 true。

var listOfPlays = [{
title: "Dollhouse",
femaleLead: true,
student: [{
name: "Echo",
role: "doll"
},
{
name: "Topher",
role: "mad scientist"
}
]
},
{
title: "Dr. Horrible's Sing-Along Blog",
student: [{
name: "Billy",
role: "mad scientist"
},
{
name: "Penny",
role: "love interest"
}
]
}
]

var output = _.filter(listOfPlays, function(item) {
return _.some(item.student, {
name: "Echo"
});
});
console.log(output);
<script src="https://cdnjs.cloudflare.com/ajax/libs/underscore.js/1.8.3/underscore-min.js"></script>

关于javascript - 如何使用 _.where(list,properties) 获取内部数组作为属性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45910753/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com