I have a TypeScript class definition that starts like this;
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];
}
Looks like an array of type Thing does not get translated correctly to the corresponding Javascript array type. This is a snippet from the generated JavaScript:
function Person(name) {
this._name = name;
this._possessions = new Entities.Thing[100]();
}
Executing code containing a Person object, throw an exception when attempting to initialize the _possession field:
Error is "0x800a138f - Microsoft JScript runtime error: Unable to get value of the property '100': object is null or undefined".
If I change the type of _possession to any[] and initialize _possession with new Array() exception is not thrown. Did I miss something?