JS中利用include和some来写一个判断权限的公共函数
1.include的用法
includes 可以判断一个数组中是否包含某一个元素,并返回true 或者false
['a','b','c'].includes('a') true ['a','b','c'].includes(1) false
2.some方法的用法---一真即真 every方法的用法---一假即假
var arr = [ {name:'jerry',sex:'man',age:14}, {name:'jack',sex:'woman',age:19}, {name:'bill',sex:'man',age:18} ] var every = arr.every(function(obj){ //every 一假即假 return obj.age > 17 }) var some = arr.some(function(obj){ // some 一真即真 return obj.age >17 }) console.log(every,some) //false true
3.判断是否有某权限 代码例子如下:
公共函数:
function hasPermission(roles, route) { if (route.meta && route.meta.roles) { return roles.some(role => route.meta.roles.includes(role)) } else { return true } }