0

最初に変数を定義している間、2番目の2D配列を定義できません。なんで?それはどのように行われるべきですか?

var NPC = new Array(10);
for (var i = 0; i < 10; i++)
{
    NPC[i] = new Array(7);
};

var previous_bead_NPC = new Array(10);
for (var i = 0; i < 10; i++)
{
    previous_bead_NPC[i] = new Array(7);
};
4

2 に答える 2

2

Arrayコンストラクターを使用する意味はありません。

var NPC = [];

結構です。JavaScriptはとにかくスペースを事前に割り当てません(少なくとも、最新のランタイムは割り当てません)。配列に特定の長さを持たせたい場合は、次のようにすることができます。

NPC[9] = undefined; // now it'll be 10 elements long

したがって、それぞれが長さ7の配列である10行の配列を作成する場合は、次のようになります。

var NPC = [];
for (var i = 0; i < 10; ++i) {
  NPC[i] = [];
  NPC[i][6] = undefined;
}

(なぜあなたがそれを望んでいるのか分かりませんが、それは何らかの目的に役立つと思います。)

于 2012-07-08T14:50:09.600 に答える
1

ここに画像の説明を入力

これは、サンプル Web サイトにコードを貼り付けたときに表示されるものです。変更はありません。だから私はあなたの問題があなたのfirebugを修正/更新することで解決できると思います;)

于 2012-07-08T15:10:44.630 に答える