1

Google book API を使用して書籍を表示しています。

API は、書籍ごとなど、多くの情報を含む json オブジェクトを返します。

"industryIdentifiers": [
   {
    "type": "ISBN_10",
    "identifier": "3640132114"
   },
   {
    "type": "ISBN_13",
    "identifier": "9783640132119"
   }
  ],

ISBN_10 識別子を取得するにはどうすればよいですか?

次のコードを使用して情報を表示します。

$.each(data.items, function(i,user){
var tblRow =
"<tr>"
+"<td><img src="+user.volumeInfo.imageLinks.smallThumbnail+"></td>"
..
+"</tr>"
$(tblRow).appendTo("#ergebnisse tbody");
});
4

1 に答える 1

3

user.volumeInfo(ループ内で)特定の本に関する情報であると仮定するとeach、次のようにして ISBN_10 値を見つけることができます。

var isbn10;
$.each(user.volumeInfo.industryIdentifiers, function(index, entry) {
    if (entry.type === "ISBN_10") {
        isbn10 = entry.identifier;
        return false;
    }
});

基本的に、industryIdentifiersオブジェクトの配列です。を使用して配列をループできます。これにより、$.each配列のインデックスと (さらに重要なことに) エントリが渡されます。typeのエントリが見つかるまで、各エントリを調べますISBN_10。見つかったら、その値を取得して$.each( を返すことによりfalse) を壊します。存在しない場合はisbn10が残ることに注意してくださいundefined

したがって、私の推測user.volumeInfoが間違っていたとしても、どこindustryIdentifiersから来たとしても、上記は ISBN_10 を見つけるのに役立ちます。

于 2013-02-27T15:02:03.617 に答える