Задать вопрос
@marrs

Почему JS преобразует массив PHP в объект?

Запрашиваю с сервера массив. Когда массив формируется таким образом:
foreach ($invoicesArray as $item) {
    array_push($invoices, $item);
 }

то проблем нет, получаю массив
5bcb5d20810e7456508824.jpeg

Но мне требуется изменить ключи массива, делаю так:
foreach ($invoicesArray as $item) {
    $invoices[$item['invoice_id']] = $item;
}

получаю объект:
5bcb5d987818b457141858.jpeg

Почему это происходит и как сохранить массив при переименовании ключей?
  • Вопрос задан
  • 172 просмотра
Подписаться 1 Средний 7 комментариев
Решения вопроса 1
В Javascript нет ассоциативных массивов. Все ассоциативные массивы в JS являются объектами. Вы не можете сохранить массив и изменить ключи, не превращая массив в объект.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@darknefrit
А что Вас смущает в работе с JS объектом ? У Вас ключи стали айдишниками, всё норм же? Какая разница как он называется объект или ассоциативный массив или карта ?:) В JS всё объекты.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы