は、あなたが以下のようなJSONを持っているとしましょう:特定の値を含むすべてのJSONオブジェクトを選択する方法はありますか?
[{
"Rarity": "Common",
"EffectOne": "+4 ACC",
"EffectTwo": "-1 SPD",
"EffectThree": "",
},
{
"Rarity": "Common",
"EffectOne": "+4 ACC",
"EffectTwo": "-1 SPD",
"EffectThree": "",
},
{
"Rarity": "Rare",
"EffectOne": "+4 ACC",
"EffectTwo": "-1 SPD",
"EffectThree": "",
}]
どのような"Rarity": "Common"
などのプロパティの1の共有値を持つオブジェクトを、ターゲットにすることができます。
できますか(この例では、このJSONの名前はデータです):data.rarity.common
?それともdata.rarity("Common")
でしょうか。私が尋ねる理由は、実際にはJSON jqueryのドキュメントのどこにでもこの情報を見つけることができないようなので、特定の値に基づいて別の場所にデータを設定したいと思っています。
あなたはJSONでいくつかの余分なコンマを持っています。主にライブラリやフレームワーク(オブジェクト、配列、プロパティなど)を必要とせずに、jQueryのドキュメントで必要な情報を見つけられない可能性があります。これはプレーンJSのすべての基本です。 '' Rarity ': "Common"を持つオブジェクトだけに配列を絞りたい場合、主に 'data = data.filter(x => x.Rarity ==" Common ")というオプションがあります。 '[** An Example **](https://jsfiddle.net/od78u3xo/) – Santi
ブーム、本当にありがとう!私はこの情報を見つけることができなかった。とても有難い! – dbrree
問題ありません。デモンストレーションするために[例](https://jsfiddle.net/od78u3xo/)を追加しました。また、明らかにするために、あなたが 'data.'を行うことができない理由は、データが*配列*であるからです。これはプロパティを持ちませんが、インデックスを持ちます。私が提供した 'filter'関数は各項目を(' x'として)反復し、与えられた条件を評価します( 'x.Rarity ==" Common "')。結果が 'false'の場合、項目は配列から削除されます。 – Santi