0

この方法でいくつかのデータを保存しました:

   var protossUnitsArray =
   [
      { name: "Zealot", health:"100", shield:"50", armor:"1", picture: "/images/protoss/zealotPortrait.png" },
      { name: "Stalker", health: "80", shield: "80", armor: "1", picture: "/images/protoss/stalkerPortrait.png" },
      { name: "Sentry", health: "40", shield: "40", armor: "1", picture: "/images/protoss/sentryPortrait.png" },
      { name: "High Templar", health: "40", shield: "40", armor: "0", picture: "/images/protoss/hightemplarPortrait.png" },
      { name: "Dark Templar", health: "40", shield: "80", armor: "1", picture: "/images/protoss/darktemplarPortrait.png" },
      { name: "Immortal", health: "200", shield: "100", armor: "1", picture: "/images/protoss/immortalPortrait.png" }
   ];

   var protossUnitsList = new WinJS.Binding.List(protossUnitsArray);

   var publicMembers =
   {
      itemList: protossUnitsList
   };

   WinJS.Namespace.define("ProtossUnitsData", publicMembers);

ご覧のとおり、アレイは公開されています。

この配列のデータを別の JavaScript ファイルから実際に参照するにはどうすればよいですか?

ストーカーの健康状態 (80) を知りたいとしましょう。ストーカーが常に配列の 2 番目の項目になることを知っていると仮定しましょう。

ProtossUnitsData.itemList[1]['health']?

しかし、それはまったく正しくありません..

4

3 に答える 3

0

配列から2番目のアイテムにアクセスする場合は、次のprotossUnitsArrayようにすべきではありません。

protossUnitsArray[1].health
于 2012-10-18T12:07:55.930 に答える
0

Windows 8 と以前は Metro として知られていた UI については知りませんが、JavaScript では次のようにすべきではありません。

ProtossUnitsData.itemList[1].health

編集

ドキュメントを見るとWinJS.Binding.List、リスト内のデータを操作するためのメソッドが公開されているようです。詳細については、こちらこちらを参照してください。ただし、使用したいようです。

var item = ProtossUnitsData.getItem(1),
    data = item.health;

それはうまくいくかもしれません...

于 2012-10-18T12:04:28.270 に答える
0

理解した!それは実際には:

ProtossUnitsData.itemList.getAt(1).health;
于 2012-10-18T12:22:47.283 に答える