• Async/Await в цикле (JS)?

    Xuxicheta
    @Xuxicheta
    инженер
    Записать все получившиеся промисы в массив, а потом await Promise.all(promisesArray)
    Ответ написан
    Комментировать
  • Какую альтернативу MacBook Pro 16 можно найти на Windows?

    inoise
    @inoise
    Solution Architect, AWS Certified, Serverless
    Альтернатив много, но, на самом деле, ноль. Преимущества макбуков это тачпад, который никто так и не повторил и уникальная Mac OS (хакинтош не в счёт, там не все так гладко). Если же смотреть чисто по железу то макбуки как бы и не топ
    Ответ написан
  • Когда использовать malloc() или calloc()?

    @cython
    calloc используют для выделения памяти под массивы, он принимает 2 аргумента, кол-во элементов массива и размер одного элемента в байтах. malloc принимает 1 аргумент, это размер выделяемой памяти в байтах. По сути одно и тоже, но calloc заполняет выделенную память нулями, что убирает весь оставшийся мусор в выделенной памяти.
    Ответ написан
    Комментировать
  • Какой язык выбрать для написания блога PHP или Node js?

    DevMan
    @DevMan
    как давно нода, реакт и экспресс стали языками программирования?

    решают не языки, а люди.
    и с такой постановкой вопроса, максимум что светит - html/css. и то - не факт.

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

    firedragon
    @firedragon
    Не джун-мидл-сеньор, а трус-балбес-бывалый.
    Вы наверное слышали про телеграмм и понты Павла про олимпиадниеов, и как их разнесли нормальные программисты. Основная проблема олимпиадниеов на мой взгляд решение задачки за 42 секунды. Пусть она будет кривой но уложись в тайм лимит, и дело в общем то не в этом. Эти ооимпиадники прилетают и снят своё гуано вокруг,
    Ответ написан
    4 комментария
  • Как сделать, чтобы функция работала всегда?

    Kozack
    @Kozack Куратор тега JavaScript
    Thinking about a11y
    мне нужно, чтобы кнопка меняла свойства в реальном времени, как это сделать?

    Вешаете обработчик события input. И в обработчике выполняете свой код.
    Ответ написан
    2 комментария
  • Как удалить свойство из объекта который формируется с помощью spread оператора?

    Aetae
    @Aetae Куратор тега JavaScript
    Тлен
    Ну добавь fullName: _, - у тебя будет правда валяться переменная _ в области видимости, но да хрен с ней.
    Или просто сделай второй строчкой delete otherProps.fullName;, тут нет какой-то особой магии.
    Ответ написан
    3 комментария
  • Что более востребовано react или Vue?

    DevMan
    @DevMan
    что более востребовано мерседес или бмв? и почему?

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

    hzzzzl
    @hzzzzl
    module federation
    https://webpack.js.org/concepts/module-federation/

    как раз сегодня видео смотрел хех
    https://www.youtube.com/watch?v=E3NHd-PkLrQ
    про федерацию в последней части, последние минут 10, выглядит впечатляюще да

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

    Попробуйте на виртуалке и станет более-менее понятно.
    Ответ написан
    Комментировать
  • Стоит ли переходить с win 10 на linux debian?

    paran0id
    @paran0id Куратор тега Linux
    Умный, но ленивый
    Вы работаете не в ОС, а в прикладном ПО. Соответственно, вам нужна ОС, где оно работает. Windows, MacOS например. Архитектура виндовса вас не подводит, вы непосредственно её даже не касаетесь. Проблема не в ней.
    Ответ написан
    Комментировать
  • Функция gets в языке С. Почему посимвольное сравнение не работает?

    shurshur
    @shurshur
    Сисадмин, просто сисадмин...
    Что тут вообще написано?

    Сначала txt1 - это FILE*. Потом зачем-то txt1=fgets(sim1), то есть в переменную типа FILE* присваивается что? Советую посмотреть описание fgets в документации:

    char *fgets(char *s, int size, FILE *stream);

    Присваивается char*. А откуда, из какого файла?

    Думаю, имелось в виду:

    sim1=fgetc(txt1);

    Тогда это имеет какой-то смысл.

    Далее, while по txt1 && txt2 не имеет смысла - указатели будут ненулевыми даже когда будет достигнут конец файлов. Правильнее обернуть в такой цикл:

    while(!feof(txt1) && !feof(txt2)) { ... }

    В конце проверить, что feof(txt1) && feof(txt2), иначе один из файлов закончился, а второй нет - размеры не совпадают, файлы отличаются.

    А более правильно делать блочное чтение, с помощью fread и memcmp, это гораздо эффективнее по скорости (да, конечно, для мелких файлов разница незаметна, но всё же):

    int isequal=1;
    while(!feof(txt1) && !feof(txt2)) {
      char buf1[1024];
      char buf2[1024];
      int readsize1 = fread(buf1, 1, 1024, txt1);
      int readsize2 = fread(buf2, 1, 1024, txt2);
      if (readsize1 != readsize2) {
        isequal=0;
        break;
      } else {
        if (memcmp(buf1, buf2, readsize1)) {
          isequal=0;
          break;
      }
    }
    
    if(isequal) {
      // одинаковы
    } else {
      // отличаются
    }
    Ответ написан
    2 комментария
  • Как выделить текущий промежуток времени и следующий?

    0xD34F
    @0xD34F Куратор тега JavaScript
    for (let i = times.length; i--;) {
      const d = new Date(times[i]);
      if (d < date) {
        result.children[i].classList.add('active');
        result.children[i + 1]?.classList.add('next');
        break;
      }
    }
    Ответ написан
    1 комментарий
  • Жив ли самомодифицирующийся код?

    @pfg21
    ex-турист
    самомодифицирущийся код гораздо сложнее чем такой же по функциональности, но не самомодифицирующийся код :) как в понимании так и в отладке.
    с учетом современного развития и жуткой дешевизны аппаратных ресурсов на фоне дороговизны человеческих, вымерло как излишество.

    на заре компов помнится читал описание игры в которой какие-то игровые функции формировались прямо во время работы игры.
    сколь помню, был большой набор исполняемых кусков в файле, из которого копированием в память формировались цепочки исполнения, на начало которых CALL'ом передавалось управление, а в конце был обязательно RET.
    периодически цепочки переформировывались.
    Ответ написан
    4 комментария
  • Как отфильтровать данный объект?

    0xD34F
    @0xD34F Куратор тега JavaScript
    Непонятно, что конкретно надо. Варианты-то разные есть. Например:

    1. Один из элементов services должен содержать все категории, указанные в filterBy:

      users.filter(u => u.services.some(s => filterBy.every(f => s.categories.includes(f))))

    2. Должны присутствовать все категории, указанные в filterBy, но распределены по элементам services они могут быть произвольным образом:

      users.filter(u => filterBy.every(f => u.services.some(s => s.categories.includes(f))))

    3. Достаточно присутствия любой из категорий, указанных в filterBy, в любом из элементов services:

      users.filter(u => filterBy.some(f => u.services.some(s => s.categories.includes(f))))

    и т.д.
    Ответ написан
    Комментировать
  • Как лучше типизировать параметры у функции?

    @twoone
    Если опустить тот факт что параметры функции сложения обязанны быть определенны как обязательные, то конкретно тип undefined можно заменить опционалыным модификатором ? .

    function а (a?: number, b?: number) {}

    В остальном параметры функции декларации описать невозможно. Другое дело функциональное выражение которое можно описать с помощью типа.

    Для псевдонима
    type Sum = (a?: number, b?: number) => number;

    Для интерфейса
    interface ISum { (a?: number, b?: number): number; }


    И использование
    const sum: Sum = (a, b) => a + b;
    Ответ написан
    Комментировать
  • Redux не добавляет свойство в state. Что делать?

    0xD34F
    @0xD34F Куратор тега React
    case 'BASKET':
      return {
        ...state,
        products: state.products.map(n => n.name === action.payload
          ? { ...n, basket: true }
          : n
        ),
      };

    UPD. Ну это уже ни в какие ворота:

    onPress={() => this.props.addToBasket.bind(this, this.props.product.name)}

    Во-первых, функцию создаёте, но не вызываете. Во-вторых, не нужна тут привязка контекста:

    onPress={() => this.props.addToBasket(this.props.product.name)}


    const showProductsList = (type, maxlength) => {
        <...>
        if(product.basket == type & currentLength < maxlength) {

    showProductsList("true", 4)

    Нет, true не будет равно "true", убираем кавычки: showProductsList(true, 4).

    Может, прежде чем браться за react, стоит язык освоить, хотя бы основы?
    Ответ написан
    4 комментария
  • Как сократить скрипт, если возможно?

    0xD34F
    @0xD34F Куратор тега JavaScript
    Заменить id на классы:

    const values = Array.from(document.querySelectorAll('.l'), n => n.value);
    document.querySelectorAll('.lt').forEach((n, i) => n.value = values[i]);
    document.querySelector('.block').style.borderRadius = values.map(n => `${n}px`).join(' ');
    Ответ написан
    Комментировать
  • Какие темы нужно пройти на нативном js, что бы освоить react+redux?

    approximate_solution
    @approximate_solution
    JS Developer. Angular\React\Vue\Ember
    но там нужен react+redux, так сказал тим лид, за месяц до начала стажировки мне надо научиться хотя бы делать тудушки.

    А потом люди удивляются, почему софт такое говно, что при нажатии на button тебя сносит лавиной говнокода. И разработчики обижаются на то, что фронтенд потерял "элитарность". Жду пост, где юный менеджер, просит старых джавистов показать ему диван, через который можно вскочить на разработку в интерпрайз Java.
    (Претендую на стажёра, поэтому вначале все равно буду все подтягивать на работе и дома ) .

    Уверен что на первом же собесе тим лид даст простое задание на js, которое Вы завалите, без обид. Я бы еще тим лида выгнал, если он Вас в команду возьмет, что бы сразу рудименты от веба удалять с "огорода".
    Ответ написан