मेरे पास टाइपस्क्रिप्ट क्लास परिभाषा है जो इस तरह से शुरू होती है;
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];
}
ऐसा लगता है कि प्रकार की एक सरणी, अनुगामी जावास्क्रिप्ट सरणी प्रकार के लिए सही ढंग से अनुवादित नहीं होती है। यह उत्पन्न जावास्क्रिप्ट से एक स्निपेट है:
function Person(name) {
this._name = name;
this._possessions = new Entities.Thing[100]();
}
व्यक्तिगत कोड वाली निष्पादन कोड, _possession फ़ील्ड को इनिशियलाइज़ करने के प्रयास के दौरान एक अपवाद फेंकें:
त्रुटि "0x800a138f - Microsoft JScript रनटाइम त्रुटि: संपत्ति '100' का मान प्राप्त करने में असमर्थ: ऑब्जेक्ट अशक्त या अपरिभाषित है"।
यदि मैं _possession के प्रकार को बदल देता हूं any[] और _possession को new Array()अपवाद के साथ प्रारंभ नहीं करता है। क्या मैं कुछ भुल गया?