打字稿如何投射任何[]

时间:2016-05-06 18:06:58

标签: generics typescript

我有一个班级

class List<T>

包含:

private _items = [];


public items() {
    return this._items;
}

为什么这样做

private loop() {
    for (var x of this._items) {
    }

但这并不是

 private loop() {
    for (var x of this.items) {
    }

错误给出为: 输入&#39;()=&gt;任何[]&#39;不是数组类型或字符串类型。

1 个答案:

答案 0 :(得分:3)

您只是错过了this.items上的方法调用 - 您需要this.items()来代替,这将返回数组,而不是使用方法本身作为迭代目标。