#t1、#t2、#t3にビデオに関する情報を入れたいが、すべてが#t3に置かれる。コードの間違いはどこですか?Json "for"ループ
$(function(){
for (var i = 1; i < 4; i++) {
var box = "#t" + i;
var id = "dQw4w9WgXcQ";
var img = "<img src='https://img.youtube.com/vi/" + id + "/default.jpg'>";
console.log(i);
$.getJSON('https://www.googleapis.com/youtube/v3/videos?part=statistics&id=' + id + '&key=AIzaSyBlYMwv6QQ9x3r1ACVt1ZeyiRXiaGeKOBU', function(data) {
$(box).prepend("viewCount: " + data.items[ 0 ].statistics.viewCount);
});
$.getJSON('https://www.googleapis.com/youtube/v3/videos?part=snippet&id=' + id + '&key=AIzaSyBlYMwv6QQ9x3r1ACVt1ZeyiRXiaGeKOBU', function(data) {
$(box).prepend("<h3>" + "Title" + data.items[0].snippet.title + "</h3>");
$(box).prepend("<h3>" + "Channel title" + data.items[0].snippet.channelTitle + "</h3>");
$(box).prepend(img);
});
}
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.5.1/jquery.min.js"></script>
<div id="t1"></div>
<div id="t2"></div>
<div id="t3"></div>
閉鎖はJavaScriptでどのように機能するかを見て! $ .getJSON()の呼び出しは非同期で動作し、コールバックが実行されるまでに 'box'の値は'#t3'です! – Mithrandir