我正在寻找一种快速(并且可能是优雅的)方式,根据表示为对象的json数据构建ReadOnlyMap
(键为strings
,而值恰好适合类型(我们称之为Foo
)。
因此,以下方法有效,但对我来说似乎过于冗长和尴尬:
const jsonData = { 'key1' : {...}, 'key2': {...} };
const mutableMap = new Map<String, Foo>();
for(const k in jsonData) {
mutableMap[k] = jsonData[k];
}
const immutableMap: ReadOnlyMap<String, Foo> = mutableMap;
这可能接近一线,但令人惊讶地很难找到。有什么想法吗?
答案 0 :(得分:2)
const immutableMap: ReadonlyMap<string, string> = new Map(
Object.keys(jsonData).map(k => [k, jsonData[k]])
);