lodash过滤和排除值

时间:2016-09-20 14:13:42

标签: lodash

我正在使用lodash _.filter函数。在过滤时,我想删除一个元素,如果它与其连续元素相同。在此代码中,显示

这是方案,

Workitem

这是一种父子,假设ABC,XYZ是父。没有孩子的父母必须被移除。 由于XYZ有一个子PQR,我应该显示两者。父母和孩子之间没有关系。 我们必须假设,当两个连续的元素已禁用= true时,我想删除它们。

2个没有孩子的父母(abc和lmn)应该被移除

1 个答案:

答案 0 :(得分:0)

我为你做了一个例子

var arr = _.filter( template, function ( item, index )
{
    if(item.needToBeRemoved) {
         return false;
    } else {
        var isNotTheLastElement = index < (template.length - 1);
        if(isNotTheLastElement) {
            var nextItem = template[index+1];
            if(item.disabled && nextItem.disabled) {
                nextItem.needToBeRemoved = true;
                return false
            }
        }
    }
    return true;
});

以下是jsFiddle