2016-10-07 13 views
0

この問題が当てはまるかどうかはわかりません。私は説明するために全力を尽くします。JSONデータとその変数を使用してプロパティを取得/変更する

私は米国国勢調査局の情報を見ているプロジェクトに取り組んでいます。私が探していたオブジェクトの一部は次のようになります(これは、オブジェクトの一部のみであることに注意してください。)

Object {MTFCC: "G5020", OID: 207903717468543, GEOID: "13135050431", STATE:  
"13", COUNTY: "135"…} 
AREALAND: 5416158 
AREAWATER: 34463 
B19013_001E: "45543" 

私が興味を持って一部である:コードであることを起こるB19013_001E中央世帯収入について家計所得の中央値を具体的に求めるために、私は次のようにします:

response.features[1].properties.B19013_001E 

すべての点がこの時点までに見つかっています。しかし、私の問題は次のとおりです。他の値を持つようにコードを変更したい。個人がそのコードですmedian_male_age、探したい場合は、以下のように、B01002_002E私はB01002_002Eでハードコードにしたくない:

response.features[1].properties.B01002_002E 

上記の行が働くだろう。しかし、やはり私は変数で決めることができるようにしたいので、特別なコードでハードコードする必要はありません。だから、私はこのようなコードたい:(!ちょうど例)

var value = prompt("What do you want to look at: ") 
//In this case value would be the special code like B01002_002E which the user enters. 
console.log(response.features[1].properties.value) 

私はこれを行うたびに、私は戻って何の情報を取得していません。最初は私が間違ったタイプをしていると思ったが、それが問題だとは思わない。 (私は数値に変換して文字列に戻そうとしました)これに関する助けは素晴らしいでしょう!

+0

閉じる! 'console.log(response.features [1] .properties [value])' –

+0

'response.features [1] .properties [propertyVar]'を使用してください。 – Derek

+0

ああ、うわー!私は本当に近くにいた!それはうまくいったようです!ありがとうございました!私はそれが簡単だとは信じられない! –

答えて

1

私のコメントに拡大します。

まず、MDNにはWorking with objectsという素晴らしいドキュメントがあります。それは読む価値があります。

第二には、あなた自身の啓発のために、JSONは、したがって、それはJ AVA S CRIPT O bject N otationの略だ文字列ではなくオブジェクトです。あなたは口語O LD J avascript O bject寢POJOまたはPと呼ばれています。それらは違う。 :)

第3に、特にあなたの質問のために、変数を介してaccessing an object propertyのときにブラケット記法を使いたいとします。したがってこの場合は次のようになります:

console.log(response.features[1].properties[value]) 

+0

はい!情報をありがとう、私はそれを感謝します!素晴らしい一日/週末を過ごしましょう! –

関連する問題