JSFiddle - React, Tailwind, and code Playground
by Jens Kühn
TypeScript
export enum EUserRoles {
None = 0,
Driver = 1,
Disponent = 512,
Admin = 1024,
UserAdmin = 2048,
SysAdmin = 4096
}
function convertRolesArrayToBitValue(arr: EUserRoles[]): number {
return arr.reduce((bitValue, role) => bitValue | role, 0);
}
const rolesArray = [EUserRoles.Driver, EUserRoles.Disponent];
const bitValue = convertRolesArrayToBitValue(rolesArray);
console.log(bitValue); // Ausgabe: 513 (entspricht 1 | 512)