gpt4 book ai didi

typescript - 在 TypeScript 中公开只读集合的​​最简洁方法是什么?

转载 作者:搜寻专家 更新时间:2023-10-30 21:01:49 24 4
gpt4 key购买 nike

我如何定义一个类型,以公开对集合的只读访问权限,该集合可以由类型本身在内部操作?

我正在寻找一种样板数量最少的方法。

更新

感谢到目前为止的回答,但这应该让我更清楚地知道我在寻找什么。

export class Item {
public Prop1: number;
public Prop2: string;
}


export class Container {

public get Items(): ??? {
// Return something that enables the client to access and modify individual items but _not_ change the contents
// of the _items array, ideally without just copying the entire array.
}

private _items: Item[] = [];
}

最佳答案

TypeScript 无法阻止开发人员更新对象的属性。

JavaScript 方式

也许用 ES6 iterable .

或者使用 ES5 getters 的实现.

... 或者像 Immutable.js 这样的图书馆可以用吗?

TypeScript 的贡献

键入可以在 readonly modifier 的帮助下进行描述.

关于typescript - 在 TypeScript 中公开只读集合的​​最简洁方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45283683/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com