- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
Как снизить ДРР до 4,38% и повысить продажи с помощью VK Рекламы
Для интернет-магазина инженерных систем
Мария Лосева
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Нужно сделать массив, где вторым уровнем будут идти подмассивы с датами
по типу
Хотел сделать это так (делаю в цикле)
Но получил ошибку.
Так тоже не прокатило
Как это можно сделать?
Наверное это можно сделать - через коллекции.
let dayArray = new Map();
и далее в цикле
но так каждый подмассив в дате перезаписывается, а мне бы нужно добавлять новый....Я хочу пересобрать массив но не понимаю как это сделать в JS
Я хочу создать новый многомерный массив где
1. Дата
2. ФИО
3. territory_id (в нем уже данные available_slots)
Вот как я пытаюсь это сделать
В итоге получил
Я не понимаю почему в цикле можно сделать так
а так уже нельзя
?
Две мысли.
1. Формально в JS массивы могут быть только с числовыми ключами. Если ключ - строка, то это объект.В php можно в массиве оба варианта ключей использовать.
Видите, у вас в консоли параметр length равен 20220431 - т.е. у вас там дофига пустых значений в массиве, что, насколько я помню, не очень хорошо для производительности.
2. Конкретно по вашему коду, вам "повезло", что дата преобразуется в число и можно это число использовать как индекс у массива. Когда вы пытаетесь записать сразу "внутрь" массива, вы по сути пытаетесь записать сразу внутрь несуществующего объекта. Т.е. сначала надо бы сделать
а потом уже
В целом, мой непрошенный совет - работайте и с объектами, там можно ключи делать строковые. Т.е. у вас будет
let dayArray = {};
затем можно будет писать так
и потом уже делать так Т.е. у вас будет объект, у которого будут ключами даты (причем можно в удобном вам формате), значения будут тоже объектами, а вот в этих объектах значения будут уже массивами. Если я правильно понял структуру, которая вам нужна.Для программирования нужно уметь думать и решать подобные задачи. Вам надо научиться думать и тогда не будете такие вопросы задавать. Или вы думаете если раньше вам помогали, то всегда будут помогать? Как вы видите людям это уже надоело.
Нужно сделать массив, где вторым уровнем будут идти подмассивы
JS не любит массивов, а ассоциативный и многомерный массивы - это вообще не для JS. JS работает с объектами. Выше об этом упомянули, но я просто хочу акцентировать на этом внимание.
Наверное это можно сделать - через коллекции.
Коллекции и массивы - это совершенно разные сущности.