-3

アイテムリストから在庫にアイテムを追加して印刷する方法は?

var items = {
    knife: {
        name: "Knife"
    }
};

var inventory = {};

//document.write(inventory....);

それとも、私は何かを理解していないので、すべてが間違っていますか? 多分オブジェクトは間違った選択ですか?

ナイフのようなアイテム名を印刷するだけの出力が必要です。ただし、変数アイテムからではありません-在庫から印刷します

すべてが地面からアイテムを拾うように機能するはずです。

4

1 に答える 1

1

インベントリに間違ったデータ構造を使用している可能性があります。種類ごとに 1 つのアイテムをピックアップできるようにしたい場合を除き、array.

var inventory = []; //empty inventory

inventory.push(items.knife); //pickup a knife
inventory.push(items.knife); //pickup another knife

インベントリをループして、アイテム名を警告します。

for (var i = 0, len = inventory.length; i < len; i++) {
    alert(inventory[i].name);
}

inventory内のオブジェクトは、オブジェクトへの参照であることに注意してくださいitems.knife。代わりにこれらのオブジェクトを複製したい場合は、JavaScript でオブジェクトをディープ クローンする最も効率的な方法は何ですか? をご覧ください。.

于 2013-05-09T03:51:44.400 に答える