当我做一个http.get时,我得到一个像这样的jsonObject:
"rights": [
"VIEW_1",
"VIEW_2",
"VIEW_5",
AND LIKE 300 more]
我只想知道VIEW 1,2和5在这个数组中。我正在考虑将其映射到一个界面,但我不知道如何仅映射值。
BR
答案 0 :(得分:0)
所以你要转
"rights": [
"VIEW_1",
"VIEW_2",
"VIEW_5",
...]
成像:
"rights": {
"View1": true,
"View2": true,
"View3": true
}
权利是接口Rights
的哪个位置?如果是这样,它是一个非常简单的接口定义。以下是typescript documentation:
interface SquareConfig {
color?: string;
width?: number;
}
你会想要一个代表你的三个布尔人。 (我不会为你做这件事!)。
棘手的事情是将数组转换为该对象。你提到了地图'如果你引用了JavaScript map
function,这是行不通的。它遍历并对数组中的每个项执行转换。你不想改变这些物品,还有那些你想要扔掉的物品。
您需要做的是搜索以获取阵列中的这些项目。您可以使用for循环执行此操作,这将是最快的。但您也可以使用find
function。这个问题是你必须做3次(并且每个人都会循环遍历数组)所以它的效率低于仅仅循环自己一次,但是寻找所有这三个。