foreach ループ (MVC3 の Razor エンジンを使用して記述) があり、反復ごとに Popups 配列に新しいオブジェクトを作成する必要があります。これが私が実行しようとしているものです:
var popups = [];
var count = 0;
@foreach (var marker in Model) {
<text>
popups[count]["content"] = document.createElement("div");
popups[count]["content"].class = "infobox-custom";
popups[count]["content"].style.cssText = "padding: 5px; width: 600px;";
popups[count]["content"].innerHTML = '<div class="professional"><h1>test</h1></div>';
popups[count]["infobox"] = new InfoBox();
popups[count]["marker"] = new MarkerInfo();
count++;
</text>
}
console.log(popups);
エラーが発生します:
キャッチされていない TypeError: 未定義のプロパティ 'content' を設定できません
ご覧のとおり、個々のマーカーの関連情報を JavaScript オブジェクトにカプセル化しようとしています。popups[index].marker
または などを使用して、必要なものすべてにアクセスすることを目指していますpopups[index].content
。
私は本 Javascript: The Good Parts を読んでいますが、言及している部分が 1 つあります。
オブジェクトにそのプロパティ名がまだない場合、オブジェクトは拡張されます。
ここで何が欠けていますか?