使用
splice()
方法清空 TypeScript 中的数组,例如
arr.splice(0)
。 该方法将通过删除并返回从索引零开始的所有元素来清空原始数组。 数组的类型在清空后保留。
const
arr = [
1
,
2
,
3
];
arr.
splice
(
0
);
console
.
log
(arr);
我们传递给
Array.splice
方法的参数是起始索引 - 我们开始更改数组的索引。
splice
方法采用的第二个参数是
delete count
- 应该从数组中删除的元素数,从起始索引开始。
如果未提供删除计数参数,则从起始索引开始的所有元素都将被删除。
出于我们的目的,我们提供
0
的起始索引来删除所有元素并清空数组。
请注意
,即使删除了数组的元素,数组的原始类型也会保留。
我们在声明数组时没有显式键入数组,因为 TypeScript 能够根据值推断类型。
如果我们声明一个空数组,请确保显式键入它,因为如果不这样做,TypeScript 会将其类型设置为
any[]
,这实际上会关闭所有类型检查。
const
arr = [];
一个更高效和更好的解决方案是重新分配保存数组的变量。
要在 TypeScript 中清空数组,可以重新分配存储数组的变量并将其设置为空数组,例如
arr = []
。 请注意,我们只能重新分配使用
let
和
var
关键字声明的变量。 这是在 TypeScript 中清空数组的最高效方式。
let
arr = [
1
,
2
,
3
];
arr = [];
console
.
log
(arr);
请注意
,我们使用 let 关键字来声明 arr 变量。 如果我们使用 const 关键字,我们将无法重新分配变量并将其设置为空数组。
另一种方法是将数组的长度设置为
0
。
要在 TypeScript 中清空数组,请将其长度属性设置为 0。当数组的长度属性更改时,索引不小于数组新长度的每个元素都会被自动删除。
const
arr = [
1
,
2
,
3
];
arr.
length
=
0
;
console
.
log
(arr);
通过将数组的长度设置为0,我们自动从数组中删除所有索引不小于0的元素,它覆盖了整个数组。
所有 3 种方法都在清空数组后保留数组的类型。
TypeScript 中 No overload matches this call 错误
TypeScript 中如何导出多个类型
{[key: string]: any} 在 TypeScript 中是什么意思
TypeScript 中检查变量的类型
如何在 TypeScript 中导出多个变量
在 TypeScript 中使用索引遍历数组
TypeScript 中的重复函数实现
在 TypeScript 中将字符串转换为数字
在 TypeScript 中使用索引迭代字符串