[解決済み] TypeScript型付き配列の使用法
2023-01-09 03:55:26
質問
TypeScriptのクラス定義で、以下のようなものがあります。
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];
}
Thing型の配列は、対応するJavascriptの配列型に正しく変換されないようです。 これは生成されたJavaScriptからのスニペットです。
function Person(name) {
this._name = name;
this._possessions = new Entities.Thing[100]();
}
Person オブジェクトを含むコードを実行すると、_possession フィールドを初期化しようとしたときに例外がスローされます。
エラーは "0x800a138f - Microsoft JScript ランタイム エラーです。Unable to get value of the property '100': object is null or undefined"(プロパティ '100' の値を取得できません:オブジェクトが NULL または未定義です)。
もし私が_possessionの型を
any[]
で_possessionを初期化すると
new Array()
を使用しても、例外はスローされません。 私は何かを逃しましたか?
どのように解決するのですか?
ここに構文の間違いがあります。
this._possessions = new Thing[100]();
これは、"array of things"を作成するものではありません。物の配列を作成するには、単に配列リテラル式を使用します。
this._possessions = [];
長さを設定したい場合は、配列のコンストラクタの。
this._possessions = new Array(100);
簡単なサンプルを作りましたので プレイグラウンド .
module Entities {
class Thing {
}
export class Person {
private _name: string;
private _possessions: Thing[];
private _mostPrecious: Thing;
constructor (name: string) {
this._name = name;
this._possessions = [];
this._possessions.push(new Thing())
this._possessions[100] = new Thing();
}
}
}
関連
-
[解決済み】アセンブリ言語での配列のバブルソート
-
[解決済み] 配列から特定の項目を削除するにはどうすればよいですか?
-
[解決済み] JavaScript で配列に値が含まれているかどうかを確認するにはどうすればよいですか?
-
[解決済み] 配列からArrayListを作成する
-
[解決済み] 配列に特定のインデックスで項目を挿入する方法 (JavaScript)
-
[解決済み] TypeScriptでオブジェクトに動的にプロパティを割り当てるには?
-
[解決済み】オブジェクトの配列を文字列のプロパティ値でソートする
-
[解決済み】配列に何かを追加する方法は?
-
[解決済み] kotlinで空の配列を作成するには?
-
[解決済み] bashでグローバルを使用せずに配列を返すには?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] 配列から要素を1つだけ値で削除する方法
-
[解決済み] 配列から要素を1つだけ値で削除する方法
-
[解決済み] Rで3D行列をセットアップし、特定の要素にアクセスする
-
[解決済み] Twigでの出力配列
-
[解決済み] 選択ソートが安定する理由と不安定な理由
-
[解決済み] Ruby: ハッシュの配列で Enumerator を取得しようとすると nil:NilClass の未定義メソッド `[]' が発生する。
-
[解決済み] kotlinで空の配列を作成するには?
-
[解決済み] 配列のインデックスやキーをチェックする最も簡単な方法とは?
-
[解決済み] CoffeeScriptで、Arrayに値を追加するにはどうしたらいいですか?
-
[解決済み] Bashでテキストファイルから配列を作成する