Saya memiliki definisi kelas TypeScript yang dimulai seperti ini;
module Entities {
export class Person {
private _name: string;
private _possessions: Thing[];
private _mostPrecious: Thing;
constructor (name: string) {
this._name = name;
this._possessions = new Thing[100];
}
Sepertinya array bertipe Thing tidak diterjemahkan dengan benar ke tipe array Javascript yang sesuai. Ini adalah cuplikan dari JavaScript yang dihasilkan:
function Person(name) {
this._name = name;
this._possessions = new Entities.Thing[100]();
}
Menjalankan kode yang berisi objek Person, memunculkan pengecualian saat mencoba menginisialisasi bidang _possession:
Kesalahannya adalah "0x800a138f - Kesalahan runtime Microsoft JScript: Tidak dapat memperoleh nilai properti '100': objek adalah nol atau tidak ditentukan".
Jika saya mengubah jenis _possession menjadi any[] dan menginisialisasi _possession dengan new Array()pengecualian tidak dilempar. Apakah saya melewatkan sesuatu?