У меня есть такой массив
roles = ['AnyRulesGo@admin', 'NoRules@admin', 'HowYesNo@history', 'MamaMia@survey'];
И у меня есть такой объект
externalLinks = [
{
link: '#',
icon: 'Icon',
translation: 'Home',
role: '@history',
active: false,
visible: false
},
{
link: '#',
icon: 'Task',
translation: 'Tasks',
role: '@task',
active: false,
visible: false
},
{
link: '#',
icon: 'Files',
translation: 'Files',
role: '@admin',
active: true,
visible: false
}
];
Мне нужна какая-то функция, чтобы проверить, имеет ли значение роль вexternaLinks существует в массиве ролей , и обновите это значение visible во externalLinks с false до true
У меня нетгораздо больше кода, потому что я даже не знаю, с чего начать, любая помощь будет отличной, спасибо
Одна из проблем заключается в том, что у меня есть имя роли netire, начинающееся только с @, это означает, что мне нужно сократить этоСтрока, а чем сравнить?
Я пробовал с этой функцией, но не повезло
function objectsAreSame(x, y) {
var objectsAreSame = true;
for(var propertyName in x) {
if(x[propertyName] !== y[propertyName]) {
objectsAreSame = false;
break;
}
}
return objectsAreSame;
}