ada87
2021-08-04 09:02:43 +08:00
直接给你代码
```javascript
//定义权限,只能是 0-30 的数字,每个权限定义不要重复
var tq0 = 0;
var tq1 = 1;
var tq2 = 2;
var tq3 = 3;
var tq4 = 4;
var tq5 = 5;
var tq6 = 6;
var tq7 = 7;
//判断是否有权限
function usrhastq(u, t) {
return (u & (1 << t)) > 0;
}
//创建一个不具任何权限的
function buildUser() {
return 0;
}
//给添加权限
function addTq(u, t) {
if (usrhastq(u, t)) {
console.log("已经具有此权限");
return u;
}
return u | (1 << t);
}
//删除的权限
function removeTq(u, t) {
if (!usrhastq(u, t)) {
console.log("还不具有此权限");
return u;
}
return u & (~(1 << t));
}
//显示具有的权限
function display(u) {
console.log("是否有权限零:" + usrhastq(u, tq0));
console.log("是否有权限一:" + usrhastq(u, tq1));
console.log("是否有权限二:" + usrhastq(u, tq2));
console.log("是否有权限三:" + usrhastq(u, tq3));
console.log("是否有权限四:" + usrhastq(u, tq4));
console.log("是否有权限五:" + usrhastq(u, tq5));
console.log("是否有权限六:" + usrhastq(u, tq6));
console.log("是否有权限七:" + usrhastq(u, tq7));
}
//demo
var user = buildUser();
console.log(user);
user = addTq(user, tq3);
console.log(user);
user = addTq(user, tq6);
console.log(user);
user = addTq(user, tq3);
console.log(user);
user = removeTq(user, tq1);
console.log(user);
user = removeTq(user, tq3);
console.log(user);
display(user);
```