ReadonlySet
表示 ReadOnly
属性集,与 ReadOnlyCollection in C# 相同?
我无法从任何地方找到它的任何文档。你能告诉我 ReadonlySet
的用途是什么吗?我们如何实现它?
let readonly: Readonly<number> = 1;
let readonlySet: ReadonlySet<number> = ???//
最佳答案
ReadonlySet
是一个类似于Set
的类型,但是它没有add
/delete
方法,所以只能在构造期间添加元素:
const regular: Set<number> = new Set([1,2,3]);
regular.add(4);
const readonly: ReadonlySet<number> = new Set([1,2,3]);
readonly.add(4) //fails, add not a function
与您引用的 C# 中的 readonlySet 不同,typescripts ReadonlySet 实际上不是一个类/构造函数。它只是一种类型。由于 typescript 具有鸭子类型,Set
是 ReadonlySet
的父类(super class),因此类型可以“类型转换”。这实际上只是为了类型检查,它对运行时没有影响。在运行时,它只是一个 JavaScript Set
。
关于javascript - 关于 : ReadonlySet? 的详细信息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48325146/