2012-01-26 2 views
1

좋은 하루 스택 명에 공급한다.내가 JS 또는 jQuery를 사용하여 날짜별로 하나의 타임 라인을 JSON 하나의 피드 두 가지를 결합하여 표시하는 방법에 대한 내 스스로에 대한 연구를하고 있어요</p> <p>, 하나

예를 들어 file1.json과 file2.json이라는 두 개의 json 파일 (하나는 twitter의 파일, 다른 하나는 filckr의 파일)이 있습니다.

"n"개의 최신 항목이 필요하며 항목별로 표시하려면 추가하십시오.

어떤 아이디어 나 힌트가 있습니까?

감사합니다.

P. 피드 예 : http://twitter.com/status/user_timeline/ignaty.json?count=5http://api.flickr.com/services/feeds/groups_pool.gne?%[email protected]&lang=en-us&format=json

각각 하나에서 하나의 값만 선택합니다.

+0

두 파일의 형식을 표시 할 수 있다면 도움이됩니다. – nnnnnn

+0

예를 들어 http://twitter.com/status/user_timeline/ignaty.json?count=5 및 http://api.flickr.com/services/feeds/groups_pool.gne?%[email protected]&lang=en- 우리 & 형식 = json – ignaty

답변

1

다음과 같은 몇 가지 방법이 있습니다.

기본적으로 두 개의 API를 요청한 다음 두 요청이 모두 완료되면 정규화 된 개체의 배열을 정렬합니다.

var all = []; 
var waiting = 2; // number of services you request 

// once you get response1 or response2 
function parseFlickr(data) { 
    $.each(data, function(index, item) { 
    // normalize item here depending on service format (parse date) 
    var normalized = {}; 
    normalized.date = new Date(Date.parse(item.date)); 
    all.push(normalized); 
    }); 

    if(--waiting == 0) { onDone(); } 
} 

function onDone() { 
    all.sort(function(a,b) { 
    // switch -1 and +1 to invert ordering 
    return (a.date < b.date ? -1 : (a.date > b.date ? +1 : 0)); 
    }); 

    // do the rendering/appending (you might limit the amount here) 
}