用javascript解析JSON数据

用javascript解析JSON数据,javascript,json,Javascript,Json,我有一个名为UserService的服务,它返回登录用户的角色 它要么返回 [{“权限”:“角色\u顶点\u支持”}、{“权限”:“角色\u顶点\u只读”}]或[{“权限”:“角色\u顶点\u只读”}] 当我看到返回的响应具有ROLE\u APEX\u SUPPORT权限时,我想做些什么。 我如何解析响应来识别它 let listOfAuthorities = this.userServices.getAuthorities(); listOfAuthorities是上述响应的JSON数组。

我有一个名为UserService的服务,它返回登录用户的角色

它要么返回
[{“权限”:“角色\u顶点\u支持”}、{“权限”:“角色\u顶点\u只读”}]
[{“权限”:“角色\u顶点\u只读”}]

当我看到返回的响应具有
ROLE\u APEX\u SUPPORT
权限时,我想做些什么。 我如何解析响应来识别它

let listOfAuthorities = this.userServices.getAuthorities();
listOfAuthorities
是上述响应的JSON数组。
如何解析并查看其响应中是否包含支持角色?

要检查您的数据是否包含
role\u APEX\u Support

const json = [{"authority":"ROLE_APEX_SUPPORT"}, {"authority":"ROLE_APEX_READONLY"}];
const isROLE_APEX_SUPPORT = json.some(s=>s.authority === 'ROLE_APEX_SUPPORT');
console.log(isROLE_APEX_SUPPORT); // Output: true
const json = [{"authority":"ROLE_APEX_SUPPORT"}, {"authority":"ROLE_APEX_READONLY"}];
const roleAlexSupport = json.find(s=>s.authority === 'ROLE_APEX_SUPPORT');
console.log(roleAlexSupport ); // OUTPUT: {authority: "ROLE_APEX_SUPPORT"}
要查找您的数据是否包含
角色\u APEX\u支持

const json = [{"authority":"ROLE_APEX_SUPPORT"}, {"authority":"ROLE_APEX_READONLY"}];
const isROLE_APEX_SUPPORT = json.some(s=>s.authority === 'ROLE_APEX_SUPPORT');
console.log(isROLE_APEX_SUPPORT); // Output: true
const json = [{"authority":"ROLE_APEX_SUPPORT"}, {"authority":"ROLE_APEX_READONLY"}];
const roleAlexSupport = json.find(s=>s.authority === 'ROLE_APEX_SUPPORT');
console.log(roleAlexSupport ); // OUTPUT: {authority: "ROLE_APEX_SUPPORT"}
此外,您还可以:

当我看到返回的响应中有ROLE\u APEX\u支持权限时,我想做些什么

如果我正确理解了您的问题,您可能需要检查您的数组是否有一个具有
权限:ROLE\u APEX\u SUPPORT的项

const input1=[{
“权限”:“角色\u顶点\u支持”
}, {
“权限”:“角色\u顶点\u只读”
}];
常量输入2=[{
“权限”:“角色\u顶点\u只读”
}];
功能权限(输入、权限){
返回输入.some((i)=>i.authority===authority);
}
log(hasAuthority(输入1,“角色\顶点\只读”))

log(hasAuthority(input2,“ROLE\u APEX\u SUPPORT”)
只要稍加努力,您就可以自己找到答案。但是,这里是:

let listOfAuthorities = this.userServices.getAuthorities();
let authorityList = JSON.parse(listOfAuthorities);

authorityList.forEach(authority => {
    if(authority.authority === 'ROLE_APEX_SUPPORT') {
    // write your logic here
    }
});
JSON.parse(str)