function receiveData(data) {
    if(isError(data))
        return;

    // Viewerの愛読書リストを表示
    if(!isError(data.get('viewer')) && !isError(data.get('viewerBooks'))) {
        var viewerId = data.get('viewer').getData().getId();
        bookList = gadgets.json.parse(
            (data.get('viewerBooks').getData()[viewerId] || {})['bookList'] || "[]");
        document.getElementById('mybooks').innerHTML = renderBookList(bookList);
    }

    // フレンドの愛読書リストを表示
    if(!isError(data.get('friends')) && !isError(data.get('friendsBooks'))) {
        var appData = data.get('friendsBooks').getData();
        var html    = [];
        data.get('friends').getData().each(function(person) {
            var books = gadgets.json.parse(
                (appData[person.getId()] || {})['bookList'] || "[]");
            if(books.length > 0) {
                html.push(
                    '<div class="person">' +
                    '<div class="name">' + person.getDisplayName() + '</div>' +
                    '<div class="books">' + renderBookList(books) + '</div>' +
                    '</div>');
            }
        });
        document.getElementById('friends').innerHTML = html.join('');
    }

まず、ViewerのIDを取得します。

data.get('viewerBooks').getData()の値は以下のようなオブジェクトになります。

{
  "ViewerのID": {
    'bookList': "JSONデータ"
  }
}