0
У меня есть следующий объект JSON (массив элементов)underscore.js как получить элемент из объекта JSON с помощью _.filter
var roles = [
{
"label": "alpha",
"children": [
{"label": "role1","title": "role1","value": "1"},
{"label": "role2","title": "role2","value": "2"}
]
},
{
"label": "beta",
"children": [
{"label": "role3","title": "role3","value": "3"},
{"label": "role4","title": "role4","value": "4"}
]
},
{
"label": "delta",
"children": [
{"label": "role5","title": "role5","value": "5"},
{"label": "role6","title": "role6","value": "6"}
]
}
]
Я пытаюсь получить (а затем удалить ..) ап элемент с определенной меткой
я определил, где объект
var where = {key: 'label', value:"alpha"};
и отфильтровать объект:
var filteredRoles = _.filter(roles, function (el) {
return el[where.key] && _.isArray(el[where.key]) &&
_.indexOf(el[where.key], where.value) >= 0;
});
console.log("found "+JSON.stringify(filteredRoles, null, 2));
, но я не могу получить: found = []
Где я ошибаюсь?
спасибо за обратную связь
эль [where.key] не массив в данной выборке так _.isArray будет возвращать ложным –
благодаря ! Я читал это много раз, заметив это ... слишком поздно ночью – erwin
добавить комментарий как ответ, если хотите – erwin