我是Node noob,尝试编写此脚本以查询Billboard Hot 100 API十年中的前10首歌曲,并提取每年的前十首歌曲。
我想console.log
循环的结果-但是console.log
语句在循环完成之前是异步执行的...
一个人该如何重写它,以使console.log
在循环完成后发生?
是的,异步让我感到困惑。
var billboard = require("billboard-top-100").getChart;
var lyricsText = "List of songs: \n\n";
function getTheSongs() {
for (let q = 1958; q < 1968; q++) {
let c = q.toString() + '-07-01';
billboard('hot-100', c, function(songs) {
for (let u = 0; u < 10; u++) {
lyricsText += songs[u].title + ", " + songs[u].artist + "\n";
}
}
)};
console.log(lyricsText);
}
getTheSongs();