Урок Javascript #8. Методы массивов JS #1 (map, filter, sort, reduce, forEach + примеры)

แชร์
ฝัง
  • เผยแพร่เมื่อ 2 ม.ค. 2025

ความคิดเห็น • 73

  • @volodymyrdubinkin4823
    @volodymyrdubinkin4823 3 ปีที่แล้ว +25

    Всем кто сомневается, что он способен изучить новую профессию - сомневайтесь и ничего не делайте! А кто пробует - у того обязательно все получится. Пробуйте, смотрите разных авторов, берите разные курсы, не обязательно очень дорогие, изучайте базу и основу, понимание приходит, не сразу, но никто и не говорил, что будет легко!!!!

    • @stackdev
      @stackdev  3 ปีที่แล้ว +3

      все так..

  • @muzaffaryunusov7032
    @muzaffaryunusov7032 3 ปีที่แล้ว +8

    боже, это было непросто, но я попытаюсь повторять и запоминать неск. раз. Спасибо за уроки огромное!

    • @stackdev
      @stackdev  3 ปีที่แล้ว +1

      Это самый правильный путь изучения!

    • @АлексейКомлев-т4с
      @АлексейКомлев-т4с 2 ปีที่แล้ว

      Сам вот всех источниках смотрю. Чтобы наконец запомнить. Учусь по Learn.Js и это пока самая сложная тема для меня. Вот и пересматриваю все

    • @МаксимСоловьев-с9н
      @МаксимСоловьев-с9н 2 ปีที่แล้ว

      возвращайся и повторяй))

  • @victancia
    @victancia 3 ปีที่แล้ว +12

    очень хорошие примеры, голос приятный, но очень не достает объяснений, автор просто показывает, а догадывайтесь сами) не понятно почему при методе сорт мы возвращаем то -1, то 1, может это основы, но былоб не плохо повторить их, видео все таки обучающее) В общем все супер, но побольше бы объяснений

    • @harrisonwinston2850
      @harrisonwinston2850 3 ปีที่แล้ว

      напиши метод sort js MDN, там тебе по русски объяснят .

    • @xczm225
      @xczm225 2 ปีที่แล้ว +1

      сейчас остановился на методе сорт по видео, зачем мы берем значения а и b тут понятно (сравнивая текущий и следующий) а вот с 1 : -1 ... зачем мы их ретерним? это как то влияет на порядок?
      Благодарю за ответ

    • @xczm225
      @xczm225 2 ปีที่แล้ว

      можно еще через localeCompare() думаю так будет нагляднее

    • @beautyisinternal6953
      @beautyisinternal6953 2 ปีที่แล้ว +1

      тоже не поняла почему надо писать -1 и 1

    • @dogshin_bulgat
      @dogshin_bulgat ปีที่แล้ว

      @@beautyisinternal6953 вы можете использовать не 1 и -1, а несколько иной синтаксис, например,
      const oldest = presidents.sort((a, b) => a.born - b.born);
      если хотите отсортировать наоборот от большего к меньшему, то соответственно b.born - a.born

  • @ЗапасЗнаний
    @ЗапасЗнаний 2 ปีที่แล้ว +2

    Очень понятно и доступно. Помогли разобраться в этих непростых вещах, как кажется сначала.

  • @Norby-Norby
    @Norby-Norby 2 ปีที่แล้ว +1

    оп, я тысячный подписчик в тг сообществе :) крутой контент, спасибо за труд

    • @stackdev
      @stackdev  2 ปีที่แล้ว +1

      Спасибо! Круто) добро пожаловать

  • @SergeAser
    @SergeAser 9 หลายเดือนก่อน +1

    Спасибо за Вашу работу - все доступно и понятно!! Может только записать, что sort() - мутирует исходный массив?

  • @jetowl57
    @jetowl57 2 ปีที่แล้ว +2

    Спасибо, всё понятно и доступно, а главное нестандартные примеры из учебника.

    • @stackdev
      @stackdev  2 ปีที่แล้ว +1

      Спасибо за поддержку!

  • @ВячеславЧервінко
    @ВячеславЧервінко ปีที่แล้ว +1

    Супер полезный материал спасибо вам огромное!

    • @stackdev
      @stackdev  ปีที่แล้ว

      Спасибо!

  • @Дмитрий-л4с9х
    @Дмитрий-л4с9х 2 ปีที่แล้ว

    Спасибо! Почти всё было понятно. С reduce() так и не разобрался, не хватило объяснения что конкретно делает этот метод.

  • @-Vladimir--
    @-Vladimir-- 3 ปีที่แล้ว +11

    В примере с городами из Википедии присутствует два класса в которых есть "sortable". Если его использовать то получится массив только из трех ссылочных элементов. Корректно указывать "plainrowheaders".

    • @manako7653
      @manako7653 ปีที่แล้ว

      Ага, точно подмечено. Пришлось подумать, почему не работает пример. Ничего, разобралась)))

    • @sam-y6h4n
      @sam-y6h4n 9 หลายเดือนก่อน

      спасибо тебе, мил человек!

  • @dennyluckes4783
    @dennyluckes4783 3 ปีที่แล้ว +1

    Ваще огонь, буду смотреть и пересматривать пока не запомню!

    • @stackdev
      @stackdev  3 ปีที่แล้ว

      Спасибо!

  • @kinomir20
    @kinomir20 2 ปีที่แล้ว +1

    Спасибо за урок!

  • @AlexiCult
    @AlexiCult 2 ปีที่แล้ว

    Благодарю за урок! Очень помогает научиться.
    По городам, есть небольшое упущение: таким образом в список попали не только города, но и county.
    Вот мой вариант, чтобы были только города. Плюс, выбор нужных элементов сразу по длинному комбинатору ('.sortable tbody th a'), чтобы в скрипте использовать только один querySelectorAll. Плюс, без промежуточных переменных, в одну строку:
    // const names = Array.from(document.querySelectorAll('.sortable tbody th a')).map(el => el.textContent).filter(el => el.includes('San '))
    // console.log(names)

  • @alexandrgusletsov2567
    @alexandrgusletsov2567 2 ปีที่แล้ว +1

    спасибо за исходник, позанимаемся

  • @artem_doronin
    @artem_doronin 2 ปีที่แล้ว +1

    урок просто божественный!

    • @stackdev
      @stackdev  2 ปีที่แล้ว

      Спасибо!

  • @vladimirpuzey713
    @vladimirpuzey713 3 ปีที่แล้ว +1

    Отличное, видео! С удовольствием делал) топ-контент

    • @stackdev
      @stackdev  3 ปีที่แล้ว

      Спасибо!

  • @murtazalievm7338
    @murtazalievm7338 ปีที่แล้ว +2

    В параметрах переменные a, b для чего предназначены? И что значит Return 1 и Return -1

    • @butyfuljazernice
      @butyfuljazernice ปีที่แล้ว

      это функция а а и б это элементы, если возвращает один то элемент идет вперед иначе назад, почитайте про сорт

  • @dinmukhamedamirov2704
    @dinmukhamedamirov2704 ปีที่แล้ว +1

    Хотелось бы по каждому методу отдельное видео. С несколькими примерами, с разными условиями. И по уровню: от легкого к сложному. А то по 1 одному не простому примеру трудно понимается. От 1 одного примера мало толку.

  • @AlexAng-s1c
    @AlexAng-s1c 2 ปีที่แล้ว +4

    const writersName = writers.sort((a, b) => a.split(", ")[1] > b.split(", ")[1] ? 1 : -1); так тоже работает)

  • @gerompauel
    @gerompauel 2 ปีที่แล้ว +1

    It was really awesome!

  • @virtreal4663
    @virtreal4663 3 ปีที่แล้ว +4

    А зачем в return `${alived > blived ? -1 : 1}` результат оборачивать в обратные кавычки? Без них тоже правильно работает.

    • @jerichod7999
      @jerichod7999 3 ปีที่แล้ว +4

      ещё можно просто отнимать одно от другого (return blived - alived)

  • @EuegenTv
    @EuegenTv 2 ปีที่แล้ว +1

    Последнюю задачку можно решить с помощью new Set() или с помощью indexOf

  • @theoty-js
    @theoty-js 2 ปีที่แล้ว +1

    Лучшее что можно найти по изучению JS

    • @stackdev
      @stackdev  2 ปีที่แล้ว

      Спасибо!

  • @АленаБулатова-ф5ж
    @АленаБулатова-ф5ж 2 ปีที่แล้ว

    Спасибо за отличные задачи. Последний пример можно решить проще: const fruSet = [...new Set(fruits)];

    • @brutix80
      @brutix80 2 ปีที่แล้ว

      ну там же был прикол именно в forEach. Хотя там же было условие запушить результат в новый обьект, чего показано не было

    • @АленаБулатова-ф5ж
      @АленаБулатова-ф5ж 2 ปีที่แล้ว

      @@brutix80 Object.keys() вернет ключи объекта в массив)

  • @doniyorallayorov5804
    @doniyorallayorov5804 2 ปีที่แล้ว +1

    Гениально

    • @stackdev
      @stackdev  2 ปีที่แล้ว

      Спасибо за поддержку!

  • @igoryavorskiy5297
    @igoryavorskiy5297 2 ปีที่แล้ว +1

    Здраствуйте, очень нравятся ваши уроки, подскажите пожалуйста как сделать такое же оформление кода как у вас?

    • @stackdev
      @stackdev  2 ปีที่แล้ว +1

      спасибо! VSCode тема Dracula

    • @igoryavorskiy5297
      @igoryavorskiy5297 2 ปีที่แล้ว +1

      @@stackdev спасибо, буду дальше смотреть ваши уроки, посоветуйте на каких уроках нужно сосредоточить внимание новичка в js?

    • @stackdev
      @stackdev  2 ปีที่แล้ว +1

      @@igoryavorskiy5297 Здесь перечислены все основные темы: js001.ru/

  • @probossgogogo5879
    @probossgogogo5879 2 หลายเดือนก่อน

    какой урок восьмой, этот или предыдущий в плейлисте?

  • @rommarioo
    @rommarioo 9 หลายเดือนก่อน +1

    Ну 9е задание было бы эстетичнее выполнить =>
    const fruitSet = new Set(fruits);
    const arraySet = Array.from(fruitSet);
    console.log(arraySet);

  • @timchenkod88
    @timchenkod88 2 ปีที่แล้ว

    Здравствуйте. И спасибо в первую очередь за интересный урок. Подскажите, пожалуйста, такой вопрос. Когда мы пишет выводить города с приставкой San - выводятся также и с приставкой Santa. А как сделать, чтобы выводило только San? Заранее спасибо!

  • @Max-kr4ie
    @Max-kr4ie 3 ปีที่แล้ว +3

    Неправильно вы дядя Василий видеоролик назвали, надобыло добавить практика или задачи. А то сами методы слабо объясняются, а практика есть.

  • @lllyovvv
    @lllyovvv ปีที่แล้ว +1

    Ребят у меня вопрос, это со всеми бывает когда ты доходишь до этого урока, то не понимаешь, но спустя время когда ты решил глянуть ещё раз то уже начинаешь понимать?)
    P.S. При том что ты вообще не имел дело с этими

  • @JavaScriptcher
    @JavaScriptcher 3 ปีที่แล้ว

    В последней задаче push() не применяется?

    • @stackdev
      @stackdev  3 ปีที่แล้ว

      Не понял - где? напишите пример

  • @antonyeskimo7593
    @antonyeskimo7593 ปีที่แล้ว +1

    Спасибо за ваш труд. Кто поможет понять в 8 задании про метод reduce.
    const dataCount = data.reduce((objCount, transport) => {
    if (!objCount[transport]) {
    objCount[transport] = 0 - Как понять почему мы ставим значение 0 (если совпало в первый ) , потом добавляем +1 если повторилось , а в итоге получается 2 (если первое значение было 0 ) Надеюсь понятно описал , не судите строго я только учусь

    • @ТалантРыскулов-о2в
      @ТалантРыскулов-о2в ปีที่แล้ว

      разберём со значением truck, его было всего 3. по коду, если этого значения в нашем объекте не было, то добавляем его как ключ со значением 0 (truck: 0). он появился в объекте и дальше reduce не закончил выполнять написанный код, указано что идёт прибавление. в итоге у нас (truck: 1).
      далее если в массиве снова встретился truck и он у нас есть в объекте, то прибавляем плюс 1 в объект (truck: 2). условие if пропускается
      потом truck встречается ещё раз и соответственно будет в объекте truck: 3

  • @Кибер-Жириновский
    @Кибер-Жириновский 2 ปีที่แล้ว +2

    reduce это боль)

    • @stackdev
      @stackdev  2 ปีที่แล้ว

      Нужно больше практики:)

  • @RockyMax
    @RockyMax ปีที่แล้ว

    с методом Push нужно выполнить последнее задание

  • @fobianka2131
    @fobianka2131 11 หลายเดือนก่อน

    да уж, видео явно не для плейлиста Начинающим. Никаких объяснений...

  • @lesters
    @lesters 2 ปีที่แล้ว +1

    последнее еще можно короче записать const newFruits = [...new Set(fruits)]; или const newFruits = Array.from(new Set(fruits))

  • @vaspurakavdalian1133
    @vaspurakavdalian1133 2 ปีที่แล้ว

    Благодаро вас за ваши позновательные уроки.Вы настоящи профессионал.
    Василий вы не могли бы помоч мне разобраться,как как коротко выполнить вот это
    / const presidentsSorted = presidents.sort((a, b) => {
    // const aLived = a.died - a.born;
    // const bLived = b.died - b.born;
    // return `${aLived > bLived ? -1 : 1}`;
    вы сказали что можно удалить две переменные и записать в одну строку.
    Честно говоря,никак не разобрался.Благодарю

    • @AlexiCult
      @AlexiCult 2 ปีที่แล้ว +1

      Так вроде должно сработать:
      // const presidentsSorted = presidents.sort((a, b) => {
      // return `${(a.died - a.born) > (b.died - b.born) ? -1 : 1}`;});
      Или ещё короче:
      // const presidentsSorted = presidents.sort((a, b) => `${(a.died - a.born) > (b.died - b.born) ? -1 : 1}`;)

    • @vaspurakavdalian1133
      @vaspurakavdalian1133 2 ปีที่แล้ว +2

      @@AlexiCult Благодаро тебе дружище.Огромное спасибо👏😎

    • @dmitrimicha8078
      @dmitrimicha8078 ปีที่แล้ว

      Ну или так
      const presidentsSorted = presidents.sort((a, b) =>
      (a.died - a.born) - (b.died - b.born))