我有这个TypeScript代码:
namespace MyNamespace {
// This map can be used to convert a rank to a character
let rank_to_char_map = ['', '', '2', '3'];
export class Card {
private _rank: Number;
constructor() {
this._rank = 3;
}
toString(): String {
return rank_to_char_map[this._rank];
}
}
}
Visual Studio突出显示toString函数中代码行的错误,该函数读取" TS2342索引表达式参数必须是' string',' number', '符号'或者'任何'。"。但是你可以看到this._rank确实是Number的类型。
当我保存文件时,会创建一个带有预期结果的javascript文件:
Card.prototype.toString = function () {
return rank_to_char_map[this._rank];
};
我错过了什么吗?
(我是TypeScript的新手)