私はYouTubeのいくつかの動画を表示するYouTube検索エンジンを作っているチュートリアルに従っています。これは講師が各ループについて言及した最初のビデオでした。私はJQueryのドキュメントを見ましたが、まだこのループが何をしようとしているのか、私の頭を抱くことはできません。彼は以下のコードの終わり近くで各ループを持ち込むまで、インストラクターとうまくやっていました。私はインストラクターがこのループで何をしているのかについてはあまりよく分かりません。任意の洞察力は役に立ちます各ループの理解といくつかの構文
function search()
{
$('#results').html('');
$('#buttons').html('');
// get form input
q = $('#query').val();
//run GET Request on API
$.get(
"https://www.googleapis.com/youtube/v3/search",{
part:'snippet,id',
q:q,
type: 'video',
key:'AIzaSyCadgai_XAKk2TYQH1f5lXrR5QEHWXowfA'
},
function(data)
{
var nextPageToken = data.nextPageToken;
var prevPageToken = data.prevPageToken;
// Log data
console.log(data);
$.each(data.items,function(i,item))
{
var output = getOutput(item);
$('#results').append(output);
}
}
);
}
'data.items'(最初のパラメータ)とコールバック関数(2番目のパラメータ)は、コレクションの各値を'#results'(IDの 'results'を持つDOM要素)に追加しています。 'i'は反復されている現在のインデックスであり、' item'はそのインデックスの実際のアイテムです –
'$ .get'はデータを返しています。これは便宜上このコードでは' data'と呼ばれます。 'data'の中に配列名' items'があります。したがって、 '$ .each(data.items)'は 'items'配列の各項目を繰り返し処理しています。アイテムを反復するので、 'function(i、item)'は、現在のアイテムを 'item'変数に代入する方法です。次に、各項目を 'getOutput()'に渡し、戻り値を '#results'に追加します。 –
ああ。これは私が印象に残っていた時間全体で、機能データ(データ)ではなく機能データ(データ)でした。私はインストラクターを無意識のうちにコピーしたときに何が起こるかと思います。 function()に正確に何を入れているのですか?私はすべての機能に名前を付ける必要があると思った。 function search(){ここにあるもの}、今まで私たちがコースでやってきたものと少なくとも同じです。 –