2016-07-12 1 views
-1

私はこのようなサーバからjsonレスポンスを取得しています。JSONレスポンスでjqueryのキーの2つの配列を解析します

{ 
    "List": [{ 
     "title": "New", 
     "type": 1, 
     "date": "2016-07-01" 
    }, { 
     "title": "New1", 
     "type": 0, 
     "date": "2016-07-01" 
    }], 
    "List2": [{ 
     "type": "1", 
     "date": "2016-07-01" 
    }, { 
     "type": "1", 
     "date": "2016-07-05" 
    }] 
} 

開始日から終了日までの繰り返しを使用して2つの配列をループしたいと考えています。リスト1またはリスト2に日付のエントリがあるかどうかをチェックする必要があります。もしそうなら、私はいくつかの操作を行う必要があります。これを手伝ってください。私は更新事前に初心者.Thanks

答えて

0
var data = { 
    "List1": [{ 
     "title": "New", 
     "type": "1", 
     "date": "2016 - 07 - 01" 
    }, { 
     "title": "New1", 
     "type": "0", 
     "date": "2016 - 07 - 05" 
    }, ], 
    "List2": [{ 
     "type": "1", 
     "date": "2016-07-01" 
    }, { 
     "type": "1", 
     "date": "2016-07-05" 
    }] 
}; 

var list1 = data.List1; 
var list2 = data.List2; 

console.log("FOR List 1"); 
for(var i in list1){ 
    if(list1[i].date === undefined){ 
    console.log("No Date"); 
    }else{ 
    console.log(list1[i].date); 
    } 
} 

console.log("FOR List 2"); 
for(var i in list2){ 
    if(list2[i].date === undefined){ 
    console.log("No Date"); 
    }else{ 
    console.log(list2[i].date); 
    } 
} 

午前:

var data = { 
    "List1": [{ 
     "title": "New", 
     "type": "1", 
     "date": "2016 - 07 - 01" 
    }, { 
     "title": "New1", 
     "type": "0", 
     "date": "2016 - 07 - 05" 
    }, ], 
    "List2": [{ 
     "type": "1", 

    }, { 
     "type": "1", 

    }] 
}; 

var list1 = data.List1; 
var list2 = data.List2; 

console.log("FOR List 1"); 
var isDateAvailInList1 = false; 
for(var i in list1){ 
    if(list1[i].date === undefined){ 
    continue; 
    }else{ 
    isDateAvailInList1 = true; 
    break; 
    } 
} 
console.log("FOR List 2"); 
var isDateAvailInList2 = false; 
for(var i in list2){ 
    if(list2[i].date === undefined){ 
    continue; 
    }else{ 
    isDateAvailInList2 = true; 
    break; 
    } 
} 

if(isDateAvailInList1==false){ 
console.log("No Date in list1"); 
//Do the operation when no date in list1 
} 
if(isDateAvailInList2==false){ 
console.log("No Date in list2"); 
//Do the operation when no date in list2 
} 

FIDDLE DEMO

0

あなたはハッシュテーブルを生成することができ、日付がであるならば、あなたは簡単にチェックできますあなたのオブジェクトは

if (hash['2016-07-01']) { 
    // check other things ... 
} 

var object = { "List": [{ "title": "New", "type": 1, "date": "2016-07-01" }, { "title": "New1", "type": 0, "date": "2016-07-01" }], "List2": [{ "type": "1", "date": "2016-07-01" }, { "type": "1", "date": "2016-07-05" }] }, 
 
    hash = {}; 
 

 
Object.keys(object).forEach(function (k) { 
 
    object[k].forEach(function (a) { 
 
     hash[a.date] = hash[a.date] || {}; 
 
     hash[a.date][k] = a; 
 
    }); 
 
}); 
 

 
console.log(hash);

関連する問題