Lodash: создание одного объекта из множества - объединение / переопределение свойств

Примечание: я подал этот вопрос под lodash, как яЯ уверен, что это может помочь мне решить эту проблему, но покатолько сейчас

У меня есть объект, описывающий различные роли пользователей и их разрешения;

У меня будет примерно 10-15 ролейкак это" (это нене отражает код приложения, но сама проблема):

    var role1 = {
    views: {
        v1: {access: true},
        v2: {access: false},
        v#: {access: false}
    }
}

var role2 = {
    views: {
        v1: {access: false},
        v2: {access: true},
        v3: {access: true},
    }
}

Подключенный пользователь будет иметь несколько ролей; В этом примере это может быть['role1', 'role2']и из этого мне нужно построить одинpermissions Объект, который будет комбинацией всех реквизитов, определенных во всех ролях пользователя.

Это в основном на основе белого списка, где все "правда" свойства должны переопределять все, что было определено как ложное. Таким образом, ожидаемый результат должен быть:

permissions = {
    views: {
        v1: {access: true},
        v2: {access: true},
        v2: {access: true}
    }
}

я не слишком уверен, как справиться с этим, не полагаясь на сумасшедшие вложенные циклы

Вот'Отправная точка в JSBin:http://jsbin.com/usaQejOJ/1/edit?js,console

Спасибо за вашу помощь!

Ответы на вопрос(1)

Ваш ответ на вопрос