Начал только изучать JavaScript. Пишу парсер, чтобы разобраться и руку набить, для скачивания mp3. Чтобы скачать отдельный трек нужно открыть отдельную вкладку. Хочу автоматизировать этот процесс, все работает, до цикла for/in. Есть предположение, что к моменту выполнению цикла страница еще не загружена, и поэтому вложенная функция getA. Но не уверен. Подскажите, пожалуйста. что не так
function getMP3(){
var mp3 = []; // На выходе хочу получить данный массив с прямыми ссылками
var objTraks = getObject() // Объект с ссылками на каждую отдельную страницу трека
function getA(){
var links = document.getElementsByTagName("a");
links = Array.prototype.filter.call(links, function(x){
return x.outerHTML.indexOf(".mp3") != -1;
}); // Возвращает отфильтрованный массив объектов
mp3.push(links[0]['href']);
}
// !!!В этом цикле проблема!!!
for(var prop in objTraks){
var w = window.open(objTraks[prop]); // Открывает страницу трека
w.getA = getA.bind(w); // Не уверен в правильности
w.getA();
w.close();
}
return mp3; // Сейчас возвращает пустой массив.
}