2017-09-15 69 views
-4
[ 
    { 
     "card": { 
      "id": 1, 
      "title": "ABC", 
      "subtitle": "CDE", 
      "begin": "10:00", 
      "end": "11:30" 
     } 
    }, 
    { 
     "card": { 
      "id": 2, 
      "title": "FGH", 
      "subtitle": "IGL", 
      "begin": "10:00", 
      "end": "11:30", 
     } 
    } 
]; 

什么是最好的迭代方法来返回其中一个'卡',知道关键'id'的一个值?我知道一张卡的一个关键字,我想返回该元素的所有数据。返回已知属性的json元素

+0

任何迭代方法可以做到这一点 – C2486

+0

请编辑的问题,并添加有效的JSON。你可以通过简单的循环迭代实现这一点,如果jQuery,那么你可以使用每种方法 – Aatman

回答

0

As @Fibman提到它不是一个有效的JSON对象或JavaScript对象。

以下是如何从一个有效的对象获取数据:

function getCard(id) { 
const jsonObjectArray = [ 
    { 
     "card": { 
      "id": 1, 
      "title": "ABC", 
      "subtitle": "CDE", 
      "begin": "10:00", 
      "end": "11:30" 
     } 
    }, 
    { 
     "card": { 
      "id": 2, 
      "title": "FGH", 
      "subtitle": "IGL", 
      "begin": "10:00", 
      "end": "11:30", 
     } 
    } 
]; 
var card; 
jsonObjectArray.forEach(
    (cardObject) => { 
     if (cardObject.card.id == id) { 
      card = cardObject.card; 
     } 

    } 
); 
return card; 
} 

getCard(1); // { id: 1, title: "ABC", subtitle: "CDE", begin: "10:00", end: "11:30" }