0

次のような JSON を検討してください。

[{
    "type": "person",
    "name": "Mike",
    "age": "29"
},
{
    "type": "person",
    "name": "Afshin",
    "age": "21"
},
{
    "type": "something_else",
    "where": "NY"
}]

JSON 値をキー (たとえばtype='person') で検索し、JSON で一致したアイテムのオブジェクト全体を選択したいと考えています。たとえば、検索するtype='person'と、次の値が期待されます。

[{
  "type": "person",
  "name": "Mike",
  "age": "29"
},
{
  "type": "person",
  "name": "Afshin",
  "age": "21"
}]

これは非常に大きな JSON 値であるため、すべてのノードでブルート フォース検索を実行したくないので、正規表現を使用するしかないと思いますが、次のような一致する正規表現を作成する方法がわかりません。その上。

アプリケーションにNodeJを使用しています。

4

4 に答える 4

2

underscore.js#where の使用:

var results = _(yourObject).where({ type: 'person' })

データ セットが非常に大きい場合 (例: 10k 程度)、サーバー側でのフィルタリング/ページ分割を検討してください。

于 2013-07-30T11:22:24.220 に答える
-2

使用する

$.grep(jsonarrayobj,function(n, i){
   if(n.type==="person")
{}
})
于 2013-07-30T11:18:15.853 に答える