• Как использовать свойство rotate?

    szQocks
    @szQocks
    const button = document.querySelector('.test');
    const circle = document.querySelector('.circle');
    
    button.addEventListener('click', () => {
      circle.style.transform = `translate(-50%, -50%) rotate(${circle.style.transform+30}deg)`;
    });
    Ответ написан
    2 комментария
  • Какую карту выбрать?

    Stalker_RED
    @Stalker_RED
    Если нужна точность до района, то можно любую svg карту где каждый район отрисован отдельным элементом. Можно даже самому конвертировать. А там слушать клики и по event.target получать район.
    Ответ написан
    Комментировать
  • Какую карту выбрать?

    freeExec
    @freeExec
    Участник OpenStreetMap
    Берёшь яндекс, геокодируешь клик и там читаешь район.
    Ответ написан
    Комментировать
  • Как отсортировать данные?

    0xD34F
    @0xD34F Куратор тега React
    const sortedData = useMemo(() => {
      return data
        .pages
        .flatMap(n => n.data)
        .sort((a, b) => b.liked.length - a.liked.length);
    }, [ data ]);

    <div className="App">
      {sortedData.map((item) => (
        <div>
        ...
    Ответ написан
    1 комментарий
  • Как изменить айди в поле объекта?

    yarkov
    @yarkov Куратор тега JavaScript
    Помог ответ? Отметь решением.
    Решение в лоб самым понятным способом. Оптимизация будет на ваше усмотрение ))
    const data = {
        pages: [{
            array1: [{
                id: 1,
                name: 'ivan'
            }, {
                id: 2,
                name: 'egor'
            }]
        }, {
            array2: [{
                id: 3,
                name: 'vlad'
            }, {
                id: 4,
                name: 'petr'
            }]
        }]
    };
    
    const id = 2;
    
    function changeNameById(id, newName) {
        data.pages.forEach((page) => {
            Object.values(page).forEach((pageItem) => {
                const element = pageItem.find((item) => item.id === id);
    
                if (element) {
                    element.name = newName;
                }
            });
        });
    }
    
    console.clear();
    
    changeNameById(2, 'Valentin');
    console.log(data);


    {
      "pages": [
        {
          "array1": [
            {
              "id": 1,
              "name": "ivan"
            },
            {
              "id": 2,
              "name": "Valentin" // Изменённое имя
            }
          ]
        },
        {
          "array2": [
            {
              "id": 3,
              "name": "vlad"
            },
            {
              "id": 4,
              "name": "petr"
            }
          ]
        }
      ]
    }
    Ответ написан
    Комментировать
  • Как перебрать файлы в папке?

    ThunderCat
    @ThunderCat Куратор тега JavaScript
    {PHP, MySql, HTML, JS, CSS} developer
    Если речь идет о клиентских скриптах - никак. Для ноды есть соответствующие методы чтения из Node.js File System API, но что-то мне подсказывает что речь про браузерные скрипты...
    Ответ написан
    Комментировать
  • Как построить fullstack приложение?

    Griboks
    @Griboks
    как на реальных проектах работают с данными, с момента того что есть данные в формате data.json

    Если он уже есть, то его сразу и отдают. Нет смысла конвертировать то, что уже готово к использованию.
    Ответ написан
    Комментировать
  • Как построить fullstack приложение?

    VoidVolker
    @VoidVolker
    Dark side eye. А у нас печеньки! А у вас?
    а как эти данные из джсона перенести в бд?

    какой далее мой алгоритм действий

    Очень просто:
    1. Устанавливается и настраивается СУБД (в вашем случае для простоты подойдет MongoDB)
    2. В серверной части устанавливается пакет Mongoose для работы с монгой
    3. Пишете простой скрипт: загрузить JSON в память и сохранить данные в монго, используя Mongoose

    Теперь в коде сервера спокойно подключаетесь к БД и используете её по назначению. Например, пишете классы по каждому типу данных, которые работают с БД. Для реализации API можно взять любую готовую библиотеку - их полно. И потом просто склеиваете это все вместе.

    в целом трудность в понимании баз данных

    Хороший повод пойти и почитать про основы БД, СУБД, как и зачем это все придумано и используется, а так же какие задачи оно решает.
    Ответ написан
    Комментировать
  • Как построить fullstack приложение?

    @formasters777
    Очень странно что за год изучения, Вы не уделили внимание теме баз данных,
    я уже через 3 месяца на бэкенд и node js смотрю, всё времени не хватает, выкраиваешь часы хоть какие-то, запускал и экспресс, но базу ещё в проект не подключал, хотя в джаве до этого запускал xamp с mysql.
    Не забывайте, что чем больше Вы знаете тем, лучше "плаваете" в теме,
    Например, если у Вас есть json 100мб, то у меня когда я такой файл просматривал на ПК, уже всё тормозило, задайте себе вопрос, где хранятся и как, посты с данного сайта например, как хранится БД интернет магазина,? Какого типа БД?
    А если Вы получите тут ответ, как Вы на работе будете работать?
    "как на реальных проектах работают с данными?" - а до этого ты можно сказать не работал с реальными проектами? Ведь каждый хук, пример корзины интернет магазина, отправка ответа на запрос собственного сервера на своём сайте, это уже реальный проект.
    Если речь идёт об кукис, сессиях это отдельная тема, но по сути можно сделать сайт, который тебе будильник в телефоне включать будет, и это также частично реальный проект.
    Ответ написан
    3 комментария
  • Как избавиться от цифры?

    @FKV
    Например так:
    parseInt("01 Jan".replace(/[a-za-яё,]/gi,''))
    или
    new Date('01 Jan' + '2022').getDate()
    Ответ написан
    2 комментария
  • Как избавиться от цифры?

    XanXanXan
    @XanXanXan
    /[1-9]\d?/
    spoiler
    или parseInt('01 Jan')
    Ответ написан
    1 комментарий
  • Как избавиться от цифры?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    parseInt("01 Jan"); // 1
    Ответ написан
    1 комментарий
  • Как сделать ренж инпуты?

    MrDecoy
    @MrDecoy Куратор тега CSS
    Верставший фронтендер
    1) Зависит от того, нужна ли возможность менять значения.
    Если нет(а судя по скриншоту как раз это просто индикатор), то это скорее тэг meter или progress
    Правда у progress всего 1 цвет по умолчанию, а у meter 3 цвета, а у вас, судя по картинкам - 4 (орандж, жёлтый, зелёный, фиолетовый)
    То есть можно создать на основе meter свой компонент или сделать обработчик и доопределить цвета в зависимости от значения, либо обойтись 3мя цветами (которые можно переопделить: https://stackoverflow.com/questions/8094835/how-to...)
    На худой конец это просто div с заливкой.

    2) Как определять цвета - это Вам не у нас нужно спрашивать. То есть нужно узнать на каком основании делать разбивку. Мы можем придумать Вам вариант, но Вы и сами можете придумать как угодно (описанный в вопросе вариант - один из возможных). Если это просто рандомный макет, то так и сделайте. Задавайте как в голову придёт. Если нет - спросите у постановщика.
    Ответ написан
    Комментировать
  • Особенности работы функций?

    rqdkmndh
    @rqdkmndh
    Web-разработчик
    Наверное вы не сказали самое главное - что такие функции не загрязняют глобальное пространство имен(что исключает конфликты имен при использовании совместно разных библиотек) и поэтому являются прототипом для создания паттерна модуль.
    Ну, а вообще кто знает что они хотели услышать... Надо в конце все же спрашивать правильный ответ по мнению вопрошающей стороны.
    Ответ написан
    3 комментария
  • Как работает свитч-кейс?

    delphinpro
    @delphinpro Куратор тега JavaScript
    frontend developer
    let a = 2;
    let b = 2;
    switch(true) {
      case a === b:
        console.log('=');
        break;
      case a > b:
        console.log('>');
        break;
      case a < b:
        console.log('<');
        break;
    }
    Ответ написан
    Комментировать
  • Как перемножить два массива?

    0xD34F
    @0xD34F Куратор тега JavaScript
    const result = a.map(function(n) {
      return b.slice(this[0], this[0] += n).reduce((acc, n) => acc * n, 1);
    }, [ 0 ]);

    Или, если второй массив больше не будет нужен:

    const result = a.map(n => b.splice(0, n).reduce((acc, n) => acc * n, 1));
    Ответ написан
    1 комментарий