После преобразования массива имен в массив ссылок URL для пользователей онлайн и офлайн и только имена закрытых учетных записей ["https://link_1","https://link_2",name(for closed account),"https//link_3",...]
через метод $ .map и .getJSON внутри этого.
Я пытаюсь применить метод $ .each с условием внутри снова, поэтому, если элемент начинается с «http», я применил метод .getJSON для работы с объектом JSON элемента (link) и добавить к нему html значения их свойств (например, html + = json.name); если элемент не начинается с «http», добавьте только значение элемента (например, html + = значение). Это не работает; переменная html принимает индекс и значение внутри jQuery.each, но не объект json вложенного метода .getJSON. Где я проиграл?
channels=["https://link1","https://link2","name(for closed account)",....];
var html="";
$.each(channels,function(index,value){
// for elements that are links
if(value.substring(0,4)=="http"){
$.getJSON(value,function(json){
html+=json.name;
});
}
// for elements that are not links
else {
html+= value;
}
});
догадка вы пытаетесь использовать 'html' перед тем Аякса делается. Важно понимать, что ajax является асинхронным. На самом деле неясно, какова конкретная проблема, хотя ... внутри 'each' или используя данные – charlietfl
Просто не можете найти, в чем проблема! Я думаю, что ваш код может работать корректно, за исключением последовательности значения «html» –