我正在尝试将一些使用 Map 的 Java 代码映射到 Typescript 代码。
我最初的想法是在 Typescript 中使用 Map,但对于我创建的界面来说这并没有成功。相反,我发现 Records 似乎完美地模拟了 Java 的 Map。
我的主要问题是我什么时候应该使用 Typescript 的 Maps 而不是 Records,什么时候应该使用 Typescripts Records 而不是 Maps?
他们的工作方式有何不同?
viewMappings: Record<string, String[]>;
viewMappings: Map<String, String[]>;
例如
我希望这些在与我所在州的界面中工作得非常相似,但他们没有,并且正在寻找两者差异的文档。
记录定义为
type Record<K extends keyof any, T> = {
[P in K]: T;
}
While Map
是原生 JS ES6 数据结构。 Record 只是一种代表性的表达方式,“该对象将用作特定数据类型的键、值映射”。这是一个使用创建的普通对象{}
. The Map
另一方面,对象具有一些描述的独特特征here https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Map并且需要实例化为new Map()
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)