Javascript 在JSON对象上循环以检查给定值是否存在
这是我的JSON对象,我想知道在Angular 6中,如果键“name”上存在一个值,我们如何搜索它Javascript 在JSON对象上循环以检查给定值是否存在,javascript,json,angular,Javascript,Json,Angular,这是我的JSON对象,我想知道在Angular 6中,如果键“name”上存在一个值,我们如何搜索它 { "id":2, "name":"Sports", "url":"/sports" "children":[ { "id":1, "name":"Football" }, { "id":2, "name":"Tennis" }, { "id
{
"id":2,
"name":"Sports",
"url":"/sports"
"children":[
{
"id":1,
"name":"Football"
},
{
"id":2,
"name":"Tennis"
},
{
"id":3,
"name":"Soccer"
}
}
谢谢。您可以使用检查值是否存在
var result = yurObj.children.some(t=>t.name === "Tennis");
演示
var yourObj={
“id”:2,
“名称”:“运动”,
“url”:“/体育”,
“儿童”:[
{
“id”:1,
“名称”:“足球”
},
{
“id”:2,
“姓名”:“网球”
},
{
“id”:3,
“名称”:“足球”
}
]
};
var result=yourObj.children.some(t=>t.name==“网球”);
控制台日志(结果)代码>您可以使用以下数组筛选器方法:
const result = Object.children.filter(item => item.name === 'Tennis')
结果数组将包含名称等于“网球”的子元素的所有元素
希望这有帮助。
劳埃德这是非常容易使用的。您可以使用find
或filter
方法find
将为您提供特定的值,而filter
将返回与搜索条件匹配的值集合
const result=u.find(yourObj,{name:'tensiness'})代码>
如果需要在对象的子对象内搜索,也可以这样做:
const result=uj.find(yourObj,函数(o){return o.children.name=='netsing'})代码>如果我使用JSON.stringify()来处理JSON对象,这是否可行?您不需要使用,只需检查demoyourObj.children是未知的。在我的例子中,结果是一个列表,我只能映射、筛选、foreach。。管理列表的方法我指的是您粘贴在上面的对象