2017-01-03 21 views
0

私はDota 2のヒーローデータを読み込むシステムを作ろうとしています。このシステムでは、各ヒーロー(強度ゲイン、intゲイン、敏捷性ゲイン)に関する多くのデータを格納する必要があります。 (浮動小数点)とその主な属性は何ですか?複数の値と値の型を持つJavascriptの列挙型

これは私がこれまでにしたものです:あなたはでこれを行うことができない出力がちょうど最後の値(真)だった

const Heroes = { 
Abaddon: ('Strength','3.4', '2.4', '1.8', true), 
Alchemist: ('Strength','2.8', '2.3', '1.6', true), 
} 
console.log(Heroes.Abaddon) 

答えて

2

あなたは創造的な取得とJavaは、他の多くの言語のような整数の名前を変更する方法よりも多くのために、それらを使用するように列挙型を使用することができます。または、次のような標準のJavaScriptオブジェクトをそのまま使用することもできます。

const Heroes = { 
    Abaddon: { 
    primaryAttribute: 'Strength', 
    attributeGains: { 
     strength: 3.4, 
     intelligence: 2.4, 
     agility: 1.8 
    } 
    }, 
    Alchemist: { 
    primaryAttribute: 'Strength', 
    attributeGains: { 
     strength: 2.8, 
     intelligence: 2.3, 
     agility: 1.6 
    } 
    } 
}; 

値には簡単にアクセスできます。

console.log(Heroes.Abaddon.primaryAttribute); 
console.log(Heroes.Alchemist.attributeGains.agility); 

具体的にはEnumが必要な理由はわかりませんが、結局は複雑で標準的なJavaScriptオブジェクトを作成します。

+0

これはまさに私が探していたものです。具体的に列挙型を探していないことを明確にするために、これは私がこのようなことをする方法を知っていた唯一の方法でした。 – Infinite

+0

うれしい私は助けることができます。 – ppovoski

0

const Heroes = { 
Abaddon: 'Strength', 
Alchemist: 'Strength', 
AncientApparition: 'Intelligence', 
AntiMage: 'Agility', 
ArcWarden:'Agility', 
Axe:'Strength', 

} 

はこれを試してみましたJavaScript。かっこは単なる追加物です。配列を使用してみてください:

const Heroes = { 
    Abaddon: ['Strength','3.4', '2.4', '1.8', true], 
    Alchemist: ['Strength','2.8', '2.3', '1.6', true], 
} 
console.log(Heroes.Abaddon) 
関連する問題