Задать вопрос
Ответы пользователя по тегу JavaScript
  • Что не так с кодом?

    Robur
    @Robur
    Знаю больше чем это необходимо
    уберите 'var' в строчке `var startCoord = {` внутри функции onMouseMove
    Ответ написан
    Комментировать
  • Возможно ли сохранить изменения элементов на сайте с помощью JS?

    Robur
    @Robur
    Знаю больше чем это необходимо
    Я мало что понял, но в таких ситуациях основная идея обычно такая:
    - то что покажет страница, зависит от каких-то параметров.
    - когда вы кликаете, вы меняете эти параметры, и соответственно параметрам меняется отображение страницы
    - эти параметры где-то сохраняются, варианты разные, можно прямо в url можно в localStorage
    - при загрузке страницы вы читаете эти параметры и смотрите, как надо поменять отображение страницы

    например у вас есть кнопка "показать данные", если на нее кликнуть то загружается json и показывается.
    при клике вы делаете это все и при этом сохраняете в localStorage "showJson=true"
    при загрузке страницы вы смотрите, если showJson=true, то тут же делаете все то что делаете по клику, не дожидаясь пока польователь нажмет кнопку. Как будто он ее сразу же нажал.

    при желании можно данные тоже сохранять, чтобы при загрузке их показать сразу же, а не делать запрос на сервер.
    Ответ написан
    1 комментарий
  • Как скачать файл с другого хоста на клиент?

    Robur
    @Robur
    Знаю больше чем это необходимо
    положите его в href тега a
    Ответ написан
  • Как правильно отсортировать объекты по дате в формате "240389"?

    Robur
    @Robur
    Знаю больше чем это необходимо
    const filtered = array.filter(...оставить только вчерашние, сегодняшние, завтрашние...)
    const grouped = lodash.groupBy(filtered, 'date')
    Ответ написан
    Комментировать
  • Как прокачать навыки функционального программирования?

    Robur
    @Robur
    Знаю больше чем это необходимо
    Изучая функциональное программирование.

    Тем немного больше чем .map и reduce.

    Но следует учесть что "функциональное программирование" - расхожий термин и давно уже в массовом сознании значит не то что он значит.
    Все скорее пишут в функциональном стиле - без классов, на функциях и с минимальным использованием концепций из функционального программирования.

    Еще может прояснить изучение документации о том как и почему перешли на функциональный стиль react(хуки) и vue (v3, composition api) - у них хорошие доки, оних много статей и это дает пачку примеров из реальной жизни о том как строить подобные приложения.

    Если прямо сильно хотите - выучите хаскель, у вас будет деформация сознания, но функциональности в коде через край.
    Ответ написан
    Комментировать
  • Можно ли повесить событие на комментарии html?

    Robur
    @Robur
    Знаю больше чем это необходимо
    Яблоко и груша у вас - не комментарии. Это текстовые ноды.
    Найти в дереве вы их можете, но текстовые ноды насколько я знаю не создают никаких событий. заворачивайте в span
    Ответ написан
    4 комментария
  • Что такое jsconfig.json?

    Robur
    @Robur
    Знаю больше чем это необходимо
    1. да, это файл для vscode помогающий редактору лучше понять где у вас что.
    https://code.visualstudio.com/docs/languages/jsconfig
    2. так как vscode крайне популярен, его поддержку добавили в create-react-app, чтобы брать оттуда какие-то параметры и облегчить настройку-конфигурацию сборки.
    https://github.com/facebook/create-react-app/searc...
    Ответ написан
    Комментировать
  • Чем плохо массовое использование async функций?

    Robur
    @Robur
    Знаю больше чем это необходимо
    Помогите привести доводы почему это надо отрефакторить и убрать ненужные async await.

    То есть у вас самого доводов никаких нет? А зачем тогда вы хотите это переделать?

    Для начала стоит спросить ради чего так сделано.
    Если это реально кто-то наговнокодил и налепил async не понимая что это и зачем, то довода "это лишний код" должно быть достаточно.
    Ну можете еще сказать что это заворачивает все в лишние промисы, делает выполнение дольше на какие-то микросекунды и усложняет отладку и может портить стектрейсы.
    Ответ написан
    3 комментария
  • Как приостановить повторный ререндер компонента?

    Robur
    @Robur
    Знаю больше чем это необходимо
    нет такого понятия "рероут".
    если компонент рендерится полностью заново - значит в какой-то момент какой-то компонент размонтируется и другой компонент монтируется.
    Возможно это делает react-router, а возможно и нет.
    Покажите код роута для начала.
    Ответ написан
  • Каким образом лучше реализовать интерфейс по визуализации цепей вопросов-ответов чат-бота?

    Robur
    @Robur
    Знаю больше чем это необходимо
    в самом простом варианте - берете свг, рисуете там кружочек, стрелочки, добавляете кнопку "добавить-удалить" для кружочка и стрелочки и все.
    Делов, если это для вас в новинку, на вечер. Самый сложный момент будет нарисовать стрелочку, но тут можно упростить - рисуйте не как на картинке (как попало) а по линии из центра в центр. точку где линия пересекается с каждым из кружочков в таком варианте найти легко.
    В сложном варианте - зависит от варианта. наворачивать можно до бесконечности
    Ответ написан
    Комментировать
  • Почему в компонент передают массив с данными через обьект?

    Robur
    @Robur
    Знаю больше чем это необходимо
    так сделано апи функциональных компонентов. В функцию передается объект в котором пропсы. Это устройство мироздания в данной локальной точке, смиритесь и делайте так как описано в документации.

    Если вас фигурные скобочки смущают, можете писать
    export const Notes = (props) => { // дальше props.arrList
    Ответ написан
    Комментировать
  • Как посмотреть какие команды выполнила библиотека?

    Robur
    @Robur
    Знаю больше чем это необходимо
    Вот можно как-то получить эту вторую команду?

    нет.
    то что она равноценна, не значит что она именно так и работает

    1. x=a+b+c
    2. x=b+c+a
    3. x=b+(c*a)/a+a

    все равноценны. Но у них совершенно разный код - и из 1) вы никак не "узнаете" 3)

    Отвечая на ваш вопрос прямо - смотреть в код jQuery.
    Но вам суд япо ответам надо не узнать как какая команда работает, а на что ее заменить чтобы получить тот же результат без jquery.
    Этого добра в гугле навалом, начните с первой ссылки https://tobiasahlin.com/blog/move-from-jquery-to-v...

    Если вы хотите узнать "какие изменения в DOM происходят при вызове jquery команды" - типа что произошло-поменялось на странице, какие стили и прочее, то это тоже можно сделать, всякими обсерверами, дебагом с брекпоинтами на изменения и прочим, но не надо нырять в этот омут.
    Посмотреть код команды которая вам интересна будет в 100500 раз быстрее.
    Ответ написан
    Комментировать
  • Как получить предыдущий кликнутый элемент,то есть по которому кликнули до нынешнего клика(js)?

    Robur
    @Robur
    Знаю больше чем это необходимо
    кликает на первый - запоминаете если шифт нажат. Кликает на второй - выделяете от запомненного до кликнутого.
    Если шифт отжимается - то забываете про первый.
    Ответ написан
    Комментировать
  • Как подойти к разработке подобного проекта?

    Robur
    @Robur
    Знаю больше чем это необходимо
    На данный момент стек таков:
    1. html - ejs
    2. css - scss (smaks + bem)
    3. js - нативный язык или же jq, TS (с react, vue, angular, знаком но как мне кажется это не для такого уровня проекта)
    4. Собирается всё с помощью GULP + webpack


    Норм. Берите и пилите. Главное определитесь какие браузеры поддерживать будете и соответственно используйте фичи-полифиллы.
    ps. gulp еще используется? мне кажется в связке с вебпаком он избыточен, но я его не видел вживую уже лет 8
    Ответ написан
  • Как перемешать такой массив?

    Robur
    @Robur
    Знаю больше чем это необходимо
    использовать Math.random() + for

    Покажите код который вы уже попытались написать. Если даже еще не пытались - то сначала попробуйте, потом спрашивайте что в нем не так.
    Если не знаете как код писать - придумайте алгоритм для начала.
    Ответ написан
    2 комментария
  • Есть ли резон идти в JS разработку?

    Robur
    @Robur
    Знаю больше чем это необходимо
    Если хотите вырасти из своего мира то есть.
    В целом, тут даже не так важно куда именно, в js или еще куда - областей где перспектив куда больше чем в натягивании шаблонов на вордпресс - огромное количество. Да почти любая область в IT перспективнее, если уж честно.

    А что вы там достигните, от вас только зависит.
    Ответ написан
    Комментировать
  • Как объяснить такое решение задач?

    Robur
    @Robur
    Знаю больше чем это необходимо
    Как начнете изучать язык и доберетесь до приведения типов - найдете свои ответы.
    Ответ написан
    Комментировать
  • Как вы работаете с разными часовыми поясами?

    Robur
    @Robur
    Знаю больше чем это необходимо
    Ответ написан
    Комментировать
  • Все обновления javascript диктуются ecmascript'ом?

    Robur
    @Robur
    Знаю больше чем это необходимо
    Считайте что это одно и то же.
    Последняя версия стандарта: https://www.ecma-international.org/publications/st...
    там же есть ссылка на драфты разных фич.

    Но, что из этого уже реализовано а что нет - сильно зависит от используемого js движка/препроцессора.
    В разных версиях будет реализован разный набор из описанного в стандарте/драфте.

    что где поддерживается можно в каком-то приближении посмотреть тут: https://kangax.github.io/compat-table/es6/
    Ответ написан
    Комментировать
  • Откуда берёт this стрелочная функция?

    Robur
    @Robur
    Знаю больше чем это необходимо
    по простому:
    this в стрелочной функции будет равен тому же чему равен был this в том месте где ее определили.

    const x= this
    setTimeout(() => console.log(this === x))  //true
    
    
    class X {
      f() {
        const x=this
        setTimeout(() => console.log(x===this)) //true
       }
    }
    
    x=this
    const obj = {
        y: ()=> console.log(x===this) //true
    }


    Ну и так далее.
    Если вам не понятно что будет в x в таких примерах - читайте что такое this и как он работает, безотносительно к стрелочным функциям
    Ответ написан
    7 комментариев