• Как отключить Tab на сайте?

    Anopeng
    @Anopeng
    Веб-программист, учу фронт и бек
    Не рекомендую так делать. Многим удобнее делать навигацию по сайту с помощью Tab, чем мышью. А ты просто ее отключишь

    window.onkeydown = evt => {
        if (evt.key == 'Tab') {
            evt.preventDefault();
        }
    }
    Ответ написан
    4 комментария
  • Как прикрутить SSL к серверу на nodejs на Ubuntu aapanel?

    SagePtr
    @SagePtr
    Еда - это святое
    Я обычно тупо проксирую nodejs через nginx, чтобы не париться, а с nginx certbot дружит из коробки.
    Вдобавок он берёт на себя многое то, что иначе пришлось бы реализовывать отдельно в nodejs-приложении - логгирование, отдача статики, сжатие данных.
    Ответ написан
    3 комментария
  • Что происходит в указанной точке кода?

    @crucian13
    Добавляется в массив сгенерированное в цикле число от 10 до 99 с каждой итерацией
    Эквивалентно записи:
    a_n_.push(a_i_)
    С таким неймингом переменных трудно понимать, конечно, нужно какие-то осмысленные имена давать, будет яснее
    Ответ написан
    2 комментария
  • Как заставить работать код 2 и более раза?

    ThunderCat
    @ThunderCat Куратор тега JavaScript
    {PHP, MySql, HTML, JS, CSS} developer
    И мне нужно чтобы после выполнения кода стили просто убирались но монета оставалась на том же месте (звучит как то не понятно но я не знаю как обеснить)
    Если стили убрать, логично что монета на том же месте не останется.

    просто я даже не знаю как обеснить не то что решить
    Это нормально, не хорошо, но нормально. Это навык который надо тренировать, и на пустом месте он не возникает. Некоторым не дается вообще, случай редкий, но бывает... Чаще всего, для постигших искусство составления правильного вопроса, ответ почти всегда очевиден.

    Во первых - сейчас второе использование кода работает не так? или не работает? Во вторых - что мешает ему работать как надо?
    Ответ написан
    6 комментариев
  • Возможно ли получить ссылку на текущую функцию изнутри функции?

    sergiks
    @sergiks Куратор тега JavaScript
    ♬♬
    arguments.callee, но это свойство недоступно в strict mode. В частности, в модулях.

    Ну, или просто дайте функции имя, чего жадничать-то : )
    (function toster() {
      console.log(toster);
    })();
    Ответ написан
    1 комментарий
  • Почему в миксин нельзя передать экземпляр класса?

    Alexandroppolus
    @Alexandroppolus
    кодир
    Метод say лежит в прототипе экземпляра Sounds, а не в самом экземпляре.
    Object.assign копирует только содержимое непосредственно объекта, не заглядывая в его прототип. Так мир устроен.
    Ответ написан
    1 комментарий
  • Как сделать, чтобы например логи удаленных сообщений приходили только с 2 каналов Discord bot js 13?

    Alexandre888
    @Alexandre888
    Javascript-разработчик
    if (message.channel.id !== 'id_1_канала' && message.channel.id !== 'id_2_канала') return;

    или
    if (!["id_1_канала", "id_2_канала"].includes(message.channel.id)) return;
    Ответ написан
    1 комментарий
  • Что можно посоветовать вечному джуниор разработчику?

    Griboks
    @Griboks
    Параллельно искал работу ASP .NET разработчиком, но всем нужны middle

    Поздравляю, теперь вы мидл!

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

    XanXanXan
    @XanXanXan
    'url(' + (img ? img : superImg) + ')'
    или
    `url('${img ? img : superImg}')`
    Ответ написан
    3 комментария
  • Туплю в решении вроде бы простой задачи?

    ThunderCat
    @ThunderCat Куратор тега JavaScript
    {PHP, MySql, HTML, JS, CSS} developer
    где я ошибся?
    ...
     if (i % j !== 0){ //тут
        b+=1
     }
    ...

    Кроме того, неплохо бы проверять что i <= j, чтобы не гонять лишние циклы
    Ответ написан
    1 комментарий
  • Туплю в решении вроде бы простой задачи?

    @402d
    начинал с бейсика на УКНЦ в 1988
    i % j !== 0

    Как я понимаю Вы решаете задачу нахождения количества простых чисел меньше или равных заданному.
    Сделал вывод по внешнему циклу i
    Дальше вы пытаетесь проверить что i простое.
    ну во первых j идти до i-1 не нужно - верхняя граница квадратный корень из i
    во вторых цикл надо прерывать при остатке от деления равному нолю
    и только если после прохода цикла не было сработки - число простое.

    в общем как я писал сразу ошибка в логике проверки что число простое.
    Простое число - нет ни одного делителя кроме 1 и N
    т.е. цикл должен пробежать целиком и флаг остался истиной
    Ответ написан
    4 комментария
  • Как правильно выводить массив изображений canvas?

    twobomb
    @twobomb
    Вместо repaintPanel добавьте
    colors.forEach(e=>{
      let img = new Image();
      img.src= e.img;
      img.onload = function(){
          e.isLoaded = true;
          if(colors.every(e1=>e1.isLoaded))        
            repaintPanel();
      }
    });

    P.S. А вообще реализация через setInterval просто ужас, сделайте один игровой цикл и используйте requestAnimationFrame или setTimeout на худой конец
    Первое что попалось, ознакомтесь если понятия не имеете что это такое
    Ответ написан
    1 комментарий
  • Как найти слово по буквам?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    const words = ['Азбука', 'Ананас', 'Зелень'];
    const letters = 'аБ'.toLowerCase().split('');
    const result = words.filter(
      (word) => {
        const lWord = word.toLowerCase();
        return letters.every((letter) => lWord.includes(letter))
      }
    );
    console.log(result);
    // Array [ "Азбука" ]
    Ответ написан
    Комментировать
  • Как найти слово по буквам?

    @wonderingpeanut
    т.к. нам надо соответствие по всем вводимым символам, вне зависимости от их порядка, нужно разбить вводимые символы в массив.
    дальше нужно найти строки, в которых есть все символы введенного значения.
    То есть для каждого введенного символа нужно проверить, содержит ли его строка.

    Что-то вроде этого:
    const arr = ['Hello', 'World', 'John Doe', 'Hakuna Matata', 'Mosakusa'];
    let input = 'da' 
    let arrInput = input.split(''); // ['d', 'a']
    arr.filter(str => arrInput.every(char => str.includes(char))); // []
    input = 'ao', arrInput = input.split('');
    arr.filter(str => arrInput.every(char => str.includes(char))); // ['Mosakusa']

    Прошу заметить, что это не самое оптимальное решение в плане оптимизации. Очень вероятно, что можно сделать лучше
    Ответ написан
    Комментировать
  • Почему выводит нечётное?

    AleksandrB
    @AleksandrB
    Совсем недавно вывел "Hello world"
    if (even == 0){
    Ответ написан
    Комментировать
  • Почему выводит нечётное?

    Alexandre888
    @Alexandre888
    Javascript-разработчик
    = - оператор присваивания, == и === - операторы сравнения.
    Ответ написан
    Комментировать
  • Как дерево представить в видемассива?

    @rPman
    в чем вопрос если ответ в тегах есть? рекурсия
    вон id даже готовые, содержат идентификатор предка

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

    shurshur
    @shurshur
    Сисадмин, просто сисадмин...
    Никто не заставляет использовать docker, systemd, ansible и вообще какие угодно системы оркестрации и оптимизации. Необязательно делать шаблоны конфигов или кластерные конфигурации сервисов, необязательно использовать библиотеки настраиваемого логгирования, возиться с балансерами и реприцируемыми базами. Но люди это делают, значит, смысл всё-таки есть?

    Опытный администратор не должен задавать вопрос "нужно ли это вообще?" и исходить из идей вида "любому специалисто в области DevOps нужно вот конкретно это и не нужно конкретно другое". Он должен сам понимать, в какой момент сложность его инфраструктуры достигает того состояния, при котором ей нужно то или иное усложнение. Не рассуждать о том, что консул вообще не нужен или остро необходим, а принять решение о том, что и когда ему нужно для решения практических задач. Прекрасно, что в современном мире существует множество инструментов, которые позволяют достаточно быстро делать различные полезные вещи.

    Консул - это тоже инструмент. Вряд ли хоть кто-то использует его возможности целиком и полностью, тем более что никто не заставляет. Кому-то достаточно того, что у него все сервисы зарегистрированы в одном месте и из коробки имеют автоматическое DNS-имя вида NAME.service.consul. Кто-то использует kv-хранилище для хранения параметров, а кто-то хранит в нём секреты и целые конфиги, настраивает токены с различными acl и скрещивает всё это с consul-template. Вообще, необязательно использовать именно консул, есть и другие инструменты для подобных задач. Например, zk/etcd.

    Консул чаще используют совсем не с ансиблом, а с инструментами оркестрации, в которых сервисы могут расширяться и сворачиваться, перезагружаться и мигрировать. Скажем, пусть у нас есть условный сервис rabbitmq на три ноды. Тогда у нас может быть три контейнера rabbitm{1..3}, при запуске они регистрируются в консуле скриптом запуска вместе с проверками, а далее consul отдаёт их все три в виде имени rabbitmq.service.consul. Если какой-то из них вдруг упадёт, consul оперативно это обнаружит и исключит из DNS проблемный узел. Если вдруг управляющий всем этим администратор или автоматическая система оркестрации посчитает нужным добавить новые узлы или перенести их куда-то ещё в кластере, то consul также отразит все нужные изменения. При этом использующее rabbitmq приложение должно будет знать только адрес rabbitmq.

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

    @Neonoviiwolf
    Flutter developer
    от джуна хорошо ожидать каких-то пет-проектов, где можно посмотреть не что он сделал, а как. Если интересует максимально быстрое трудоустройство, то начать делать проекты, а не велосипеды. Стоит очень много уделить внимание структуре проекта
    Ответ написан
    Комментировать
  • Правда ли что SSR постоянно отваливается?

    SeaInside
    @SeaInside
    15 лет пилю все эти штуки
    Нет, неправда.

    Не бывает так, что один и тот же код в одинаковом окружении иногда "отваливается", а иногда "не отваливается".
    Я вот за что очень люблю программирование - у всего всегда есть причина.
    Чаще всего причиной являются кривые руки. :)
    Ответ написан
    Комментировать