WbICHA, судя по качетву остального кода в проекте, это было использовано или от полного непонимания как это работает, или просто на пофиг "ну написал и написал, работает же".
Муслим Яхъяев, сам нет, я еще сижу на 16 дюймовом интеле, а вот коллега перебрался с 15-шки 2018 года на Эйр 16/512 на м1 и говорит что все прекрасно. Из задач это фронт + бэк на ноде с докерами для бд и редиса, плюс браузеры/мессенджеры и всякая другая прикладная мишура.
Alex Alex, ну например, тебе надо написать сервис, в качестве клиента которого будет и браузер, и мобильное приложение, и просто другие сервисы будут стучаться по твоему апи, зачем всем кроме браузера твои html выведенные через echo на php? Поэтому универсальнее отдать данные, а каждый из там вертит у себя как хочет, просто как одна из причин
penta-bongo, ну так, оно и вернет undefined, если в месяце 31 день, исправь в цикле условие 31 на 32, хоть это и стремный костыль, и так никогда писать не нужно, но будет работать
penta-bongo, блин, но расчехлил сути вопроса, короче, когда ты выставляешь в начале функции дату в 0, это по сути меняет дату на последний день предыдущего месяца, так как дни начинаются с 1, поэтому циклом ты бежишь уже по прошлому месяцу, если у предыдущего месяца было 31 дней, цикл пройдет все итерации и не достигнет условия getDate() !== i (31 !== 31) на последнем шаге, поэтому return не вызовется и функция вернет undefined, так как другого return в ней нет дальше.
Вадим Алиев, делать отдельный запрос на каждый файл лучше, так как если отвалится один запрос из 20, остальные 19 загрузятся, а в случае одного запроса ждать дольше, и при отвале не загрузятся все, так как сервер не начнет обрабатывать запрос, пока не загрузит все тело
Вадим Алиев, у http запроса есть тело, это просто по сути набор байт, что именно и как туда было сериализованно на момент отправки неизвестно, сколько там было файлов, или была просто строка с json, у него в заголовках есть размер этого тела и браузер может показывать прогресс сколько байт из этого тела отправлено, поэтому, если нужен прогресс по каждому файлу, надо делать отдельные запросы, чтоб телом каждого запроса был отдельный файл