Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   Как перебрать массив в JS? (https://javascript.ru/forum/dom-window/80791-kak-perebrat-massiv-v-js.html)

AnteFil 01.08.2020 21:45

Как перебрать массив в JS?
 
Я получаю несколько массивов в формате JSON точное количество сказать не могу так как оно всегда разное типа
[{"id":92999,"0":92999,"id_sait":"VV-37616793",........
 [{"id":3432,"0":324324,"id_sait":"VV-34234234",........
 [{"id":3434,"0":675433,"id_sait":"VV-23459994",........
и так далее

Как это перебрать и оформить на странице каждую запись. Должно получиться подобие выдачи поисковика. От JS я далёк ближе PHP я попробую объяснить логику средствами php.

Если совсем просто то я использовал бы цикл foreach
Допустим $data - это переменная которая содержит все массивы данных
Тогда
foreach ($data as $element_massiva){
echo "<div class='id'>".$element_massiva['id']."</div>";
echo "<div class='idsait'>".$element_massiva['id_sait']."</div>";
}

Как реализовать нечто в js

рони 01.08.2020 22:00

Цитата:

Сообщение от AnteFil
Как реализовать нечто в js

https://javascript.ru/forum/misc/720...tml#post474458

AnteFil 02.08.2020 21:19

Цитата:

Сообщение от рони (Сообщение 527507)

С горем по полама написал я вот такой код

function setData() {
var xhr = new XMLHttpRequest();
var city = 'Москва';

xhr.open("GET", "https://site.com/api/?get_city="+city, true);
xhr.onreadystatechange = function() {
  if (xhr.readyState == 4) {
    // innerText does not let the attacker inject HTML elements.
   document.getElementById("output").innerText = xhr.responseText;
  }
}
xhr.send();

}

Нагуглил я как пишется цикл
users.forEach(function(user,index,arr){
    
})

Проблема теперь в том что бы обьеденить это всё во едино

AnteFil 02.08.2020 22:18

маленько переделал
if (xhr.readyState == 4) {
    // innerText does not let the attacker inject HTML elements.
	//document.getElementById("output").innerText = xhr.responseText;
	var person = JSON.parse(xhr.responseText);
	console.log(person);

Почему то теряються имена ключей в массиве ставит 0,1,2,3,4 и тд

рони 02.08.2020 23:15

AnteFil,
:-?

AnteFil 03.08.2020 20:51

Был массив JSON (пишу без соблюдения пунктуации просто для примера)
id:3423423
name:sergi
city:Omsk

После SON.parse а именно
var person = JSON.parse(xhr.responseText);

массив приобрёл такой вид
0:3423423
1:sergi
2:Omsk
3:..... и так далее

AnteFil 03.08.2020 20:53

Другими словами на входе JSON.parse был ассоциативный массив на выходе уже не ассоциативный массив

рони 03.08.2020 21:19

AnteFil,
может вам сначала разобраться с сервером, что и в каком формате он посылает, вывести данные в таблицу не проблема, знать бы что выводить.

AnteFil 03.08.2020 21:21

блин в самом первом сообщении написал

AnteFil 03.08.2020 21:23

Я уже запутался )))))


Часовой пояс GMT +3, время: 16:34.