- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
我在 TypeScript 中有这个代码片段:
const arr: ReadonlyArray<string> = [
"123",
"234"
];
arr.push("345");
TS 编译器显示错误:
Property 'push' does not exist on type 'ReadonlyArray<string>'
.
当然,很明显我不能更改/改变这个数组。问题是:ReadonlyArray
的基类是什么? ?它是否继承自标准 Array
类(class)?
最佳答案
https://www.typescriptlang.org/docs/handbook/interfaces.html指出:
TypeScript comes with a
ReadonlyArray<T>
type that is the same asArray<T>
with all mutating methods removed, so you can make sure youdon’t change your arrays after creation
如果你想要源代码,请前往:
https://github.com/Microsoft/TypeScript/blob/master/src/lib/es5.d.ts#L1121 (01.06.2022) - 如果源文件发生变化,则搜索“ReadonlyArray”。
(其定义在当前版本的第1121行)。
关于typescript - ReadonlyArray 继承了什么类?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47489880/
我在 TypeScript 中有这个代码片段: const arr: ReadonlyArray = [ "123", "234" ]; arr.push("345"); TS 编译器
在某些情况下,Angular 函数和回调返回一个 ReadonlyArray。但是数组应该像往常一样使用,因为我不使用像 Redux 中的那些不可变结构。 那么如何将 ReadonlyArray 转换
一些 native Angular 函数返回一个 ReadonlyArray。一些 native Angular 回调传递 ReadonlyArrays。由于我的 typescript 代码可能会以多
代码 1: let readonlyArray: ReadonlyArray = ["test", 1, 1]; 代码 2: let readonlyArray: Readonly = ["test
背景是,我正在尝试从 .env 中读取 DatabaseType 以构建 TypeORM 连接,如下所示: const config: ConnectionOptions = { type: pr
完整的 Typescript 错误: Argument of type '(c: IAsset) => number' is not assignable to parameter of type '
我正在尝试从 official documentation 学习 Typescript .而在 Interfaces section我已阅读以下内容: TypeScript comes with a
type Foo = {a: number} let obj: Foo = {} as Readonly let arr: number[] = [] as ReadonlyArray 据我所知Rea
我是一名优秀的程序员,十分优秀!