JavaScriptを使用してJSONオブジェクトに含まれる要素の数を調べる方法がわかりません。これは私のオブジェクトが構成されている方法です。 jsonオブジェクトの要素数を調べる
var shows = [];
//make http call here to api url and store in variable called 'data'
for (int i = 0; i < data.length; i++) {
var element = {
"location": {
"latitude": data[j].venue.latitude,
"longitude": data[j].venue.longitude
},
"artist": data[j].artists[0].name,
"venue_name": data[j].venue.name,
"date": data[j].datetime
};
shows.push(element);
};
は、だから私は、私がアクセスを希望
shows[i].location
を使用するか、どんなキーで簡単に要素にアクセスすることができます。しかし、このトピックをカバーするすべての質問/回答は、要素の数を見つけるために、
Object.keys(shows).length
を推奨しているようです(私はこのfor each要素のためにfor-eachループを動かすこともできませんでした)。
しかし、これは私のケースでは機能しません(「ショー」には直接キーがないためです)ので、要素の数にアクセスする他の方法があるかどうか疑問に思っていました4つのキー:値のペア)が「ショー」の内側にありますか?または、すべての要素を繰り返し処理する別の方法がありますか?それが不可能な場合は、要素の数を見つけやすくするためにオブジェクトを構造化する別の方法がありますか?どんな助けでも大歓迎です!
['length'](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/length)プロパティを探していますか? 'shows.length'は、偶然にも' data.length'と等しくなります。サイドノート:これは「jsonオブジェクト」ではありません。 JSONは、データに変換できるテキスト形式です。あなたが持っているのは、オブジェクトの配列です。 –
'これは私のオブジェクトがどのように構造化されているか' - オブジェクトの配列です...配列の長さはdata.lengthになります –
'int i = 0 '(これは有効なJavaScriptでさえも)であるが、エラーを引き起こす 'data [j]'を参照する。 –