2017-05-23 6 views
0

jsonデータを照会するにはどのような方法が推奨されますか?例えば私のデータは特定の条件のjsonデータを照会する

var meetings = 
      { 
      "meeting" : [ 
       { 
         "subject" : "Server upgrade for data center C3W", 
         "attendees" : [ 
          { 
          "name" : "Ron Edward", 
          "title": "CEO", 
          "company": "Data Solutions", 
          "confirmed" : "yes" 
          }, 
          { 
          "name" : "John Steward", 
          "title": "Procurement Officer", 
          "company": "Data Solutions", 
          "confirmed" : "yes" 
          }, 
          { 
          "name" : "Name 1", 
          "title": "Senior Director", 
          "company": "C1 Corporation", 
          "confirmed" : "no" 
          } 

         ] 
       } 
       ] 
      } 
     ; 

のように見え、

+0

?私は推測しているC# –

+0

私はnodejsを使用して – Vik

+0

私は編集を受け入れるタグを追加しました。 –

答えて

1

あなたの質問は、あなたが任意の出席者が存在するかどうかを確認するかどうかについては明らかではないが確認値のない出席者のいずれかがある場合、私は次のように照会したいです誰が確認していないか、またはどの出席者が確認されていないかを知りたいですか?確認したプロパティを持つオブジェクトがありません

に設定されている場合と、この関数はtrueを返します:

共通コード

function checkConfirmation(person){ 
    return person.confirmed == "no" 

} 

Explantion - :どちらの場合もコードはほとんどマイナーな違いと同じですケースI:「いくつかの()は、」チェックするJavaScriptの配列方法である:あなたが唯一まだ

var result = meetings["meeting"][0]["attendees"].some(checkConfirmation); 
    console.log(result); // true 

Explantionを確認していない者があるかどうかを検索したい場合は配列のメンバーのいずれかが関数の条件を満たしているかどうかを返します。あなたのケースでは、1人の出席者がまだ確認していないので、それは正しいでしょう。

ケースII:すべての人が確認していないものだけを探したい場合。

var result = meetings["meeting"][0]["attendees"].filter(checkConfirmation); 
     console.log(result); // [ { name: 'Name 1',title: 'Senior Director', company: 'C1 Corporation', confirmed: 'no' } ] 

Explantion:「フィルタ()」は、別の配列{元のサブアレイ}、機能の条件を気力メンバーを返すJavaScript配列方法です。あなたの場合、それは1人のメンバーを持つでしょう。

これらのメソッドについてもう少し: - あなたが使用しているプログラミング言語 https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/Array/filter

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/some

関連する問題