Объяснение работы функции sort в JavaScript

Поділитися
Вставка
  • Опубліковано 3 лип 2018
  • Проблемы с функцией sort в JavaScript? Кажется, что она неверно сортирует числа? В данном уроке вы найдете объяснение ее странному поведению, а также научитесь применять анонимную функцию для сортировки. Кроме того, вы узнаете, как сортировать многомерные массивы с помощью sort.
    Автор видео: Трепачёв Д.П.
    Больше уроков вы найдете на сайте xcode.mu

КОМЕНТАРІ • 115

  • @user-el5ls2cq1y
    @user-el5ls2cq1y 2 роки тому +30

    Благодарю!Ты единственный кто смог по полочкам разложить всё как есть!

  • @GitarisT12332
    @GitarisT12332 Рік тому +5

    Столько лет прошло, а ты всё также приносишь людям пользу) Спасибо! Всё стало понятно

  • @DrZlad
    @DrZlad 2 роки тому +7

    Красавчик! Спасибо большое. Про сортировку пузырьком тысячу раз слышал и только Вы хоть объяснили почему она так называется!!! Продолжайте, Вас ждёт успех!

  • @fotolavka23ru
    @fotolavka23ru 9 місяців тому

    Единственный, кто смог объяснить принцип работы этого метода сортировки. Молодец!

  • @user-rn5ge7mu7m
    @user-rn5ge7mu7m 6 місяців тому

    ВОт 5 лет прошло с даты выхода видоса, а до сих пор очень полезно, спасибо тебе, помог разобраться

  • @ruslanryapov6221
    @ruslanryapov6221 11 місяців тому

    Автор, спасибо тебе за такой понятный, четкий, простой и доступный для понимания разбор!

  • @thewantedplay8639
    @thewantedplay8639 10 місяців тому

    Спасибо. Детально и очень понятно! Благодарен)

  • @user-op5wl6yc6y
    @user-op5wl6yc6y 10 місяців тому

    Молодец! Обязательно куплю курс!

  • @Marina-zp8le
    @Marina-zp8le 4 роки тому +1

    Как же, оказывается, все просто, это удивительно! Большое спасибо, Дмитрий)

  • @cy66a
    @cy66a Рік тому +1

    Спасибо, хорошее объяснение! Было бы ещё классно вывести в консоль как меняется массив каждую итерацию сортировки

  • @user-sx6gk1cw9w
    @user-sx6gk1cw9w 2 роки тому +1

    Дмитрий, здравствуйте! Большое вам спасибо за такое простое и понятное объяснение.

  • @petergriffin7447
    @petergriffin7447 Рік тому

    спасибо, а то не могла понять, что это за a-b в сортировке, и что с этим делать) а оказалось так просто всё)

  • @papizzi
    @papizzi 2 роки тому

    Спасибо чувак ! Ты единственный кто детально объяснил приницип работы этого метода.

  • @Natalia-2707
    @Natalia-2707 Рік тому

    благодарю за толковое объяснение

  • @happy_natalya
    @happy_natalya 2 роки тому

    Дмитрий, благодарю вас! Суперобъяснения!!!

  • @JavaScript_95
    @JavaScript_95 Рік тому

    Спасибо за твои труды

  • @user-pc7jy7jt4m
    @user-pc7jy7jt4m Рік тому

    спасибо тебе Дмитрий)) очень ясно объясняешь))

  • @npocTpuM
    @npocTpuM Місяць тому

    Заметил интересную особенность метода sort() . В старых роликах на ютубе и в старом браузере Мозила переменные a и b работают в другом порядке чем в новом Хром и VScode. a и b - поменялись местами и сортировка проходит за большее количество этапов, чем раньше))

  • @azizsokhibov2731
    @azizsokhibov2731 Рік тому

    Спасибо большое! Вы хорошо объясняете

  • @user-rb3sw3ku6t
    @user-rb3sw3ku6t Рік тому

    Большое спасибо! Наконец всё стало на свои места. Теперь всё ясно и понятно.

  • @lidijajezova2025
    @lidijajezova2025 Рік тому

    Спасибо! Все стало понятно теперь, спокойное и доходчивое объяснение.

  • @andreasshev5748
    @andreasshev5748 8 місяців тому

    Спасибо. Очень понятно и полезно.

  • @niakhai3659
    @niakhai3659 11 місяців тому

    Класс, спасибо большое , помог разобраться!

  • @danilkabak96
    @danilkabak96 5 років тому

    Дим, спасибо! Озадачен сейчас сортировкой массивов и ты как нельзя кстати. Объясняешь отлично, я все уловил, буду практиковать!)

  • @marlonbrando458
    @marlonbrando458 4 роки тому

    Спасибо, всё четко и доходчиво, что даже младенец разберётся, лайк!

  • @user-jx1nv9mu2l
    @user-jx1nv9mu2l 3 роки тому

    Спасибо, все очень доступно. Многое встало на свои места

  • @artemkatr9483
    @artemkatr9483 3 роки тому +1

    Спасибо огромно, сначала не понимал что за параметры (a,b). LIKE!

  • @daniilkudryashov4229
    @daniilkudryashov4229 4 роки тому +7

    Красавчик, хорошо объяснил

  • @DenInside
    @DenInside 2 роки тому

    Дружище, спасибо!

  • @TRIZ-Bogatyregold
    @TRIZ-Bogatyregold 2 роки тому

    Спасибо за видео, очень помогло! После этого видео, я однозначно могу сказать что я метод sort() понял!

  • @user-wo8wd9kr1b
    @user-wo8wd9kr1b 5 років тому

    Спасибо большое. Мне было интересно узнать подноготную данного метода. Как он работает, по каким принципам, и как задавать критерии сортировки, чтобы компу было понятно чего я хочу от него. Так просто и понятно нигде и никто не объяснял. Круто. Жду новых видосов

  • @user-eo4cc1eq7t
    @user-eo4cc1eq7t Рік тому

    muchalsya 2 dya s mnogomernym massivom, spassibo tebe biiig thanks bro

  • @van777ok3
    @van777ok3 4 роки тому

    Привет! Большое спасибо за урок,очень помог!)

  • @herrokay
    @herrokay 5 років тому +4

    Большое человеческое спасибо! Человек, ты крут, а объяснения доступны!

  • @darkcrusaderzxc
    @darkcrusaderzxc 5 років тому +1

    спасибо за материал, с начала года с перерывами занимаюсь программированию на вашем сайте и на learn.js , мне нравится) еще бы с ajax запросами разобраться) это походу уже мой моби дик)

  • @max-ek5uu
    @max-ek5uu 2 роки тому

    спасибо, хорошее объяснение sort array js

  • @oleksandrpoliukh9658
    @oleksandrpoliukh9658 2 роки тому

    Качество звука треш, но доступное объяснение сортировки заслуживает лайк!

  • @eleumeleumia5764
    @eleumeleumia5764 2 роки тому

    Очень доступное объяснение, спасибо

  • @sayonara17155
    @sayonara17155 4 роки тому

    Благодарочка, доступно объяснил

  • @UkrNotes
    @UkrNotes Рік тому

    Файно дякую, шановний!

  • @Vlad1998996
    @Vlad1998996 2 роки тому

    Самое лучшее обьсяснение.

  • @JsMaster
    @JsMaster 3 роки тому

    Отлично объяснил, спасибо тебе!

  • @YakatoSaku
    @YakatoSaku Рік тому

    спасибо, объяснил четко!

  • @tofidndndkkdkwkqe7017
    @tofidndndkkdkwkqe7017 4 місяці тому

    Спасибо брат, реально помог!

  • @Affor1337
    @Affor1337 4 роки тому

    Спасибо, подробно объяснил сортировку)

  • @user-sx2ms3pn3z
    @user-sx2ms3pn3z 3 роки тому

    3-й раз за год пересматриваю, когд появляется потребность в этой функции)
    Твой сайт манна для начинающих прогеров

    • @Isten
      @Isten 3 роки тому

      просто попрактикуйся, руки все помнят :)

  • @sergeyzelensky
    @sergeyzelensky 2 роки тому

    просто суперское объяснение спасибо большое)

  • @drumrack3995
    @drumrack3995 4 роки тому

    Молодец! Отлично объясняешь!

  • @user-vn9qk3eh6i
    @user-vn9qk3eh6i 3 роки тому

    спасибо, особенно за сортировку по отдельным ключам

  • @pupizoid100
    @pupizoid100 Рік тому

    А вот оно что! Я думал нафига b - a в функции sort.
    const max = arr.sort((a, b) => b - a)[0]; Теперь понятно Спасибо

  • @amirnalyne3801
    @amirnalyne3801 3 роки тому

    Очень заряжено объяснил

  • @TeaWillHelp
    @TeaWillHelp 2 роки тому

    Блин, ты крутой. Спасибо!

  • @user-du4qb9yc2q
    @user-du4qb9yc2q Місяць тому

    доходчиво! спасибо

  • @user-zd3hi3pi1q
    @user-zd3hi3pi1q Рік тому

    ХОРОШ! очень толково!

  • @BobbyBob21
    @BobbyBob21 4 місяці тому

    Тоже подмечал, что вилку на три варианта под капотом делают через отрицательное, 0 или положительное число.

  • @dr_morpho
    @dr_morpho 2 роки тому

    Спасибо вам!

  • @NickToTrick
    @NickToTrick 4 роки тому

    спасибо, после твоего объяснения стало понятно

  • @TheEegmen
    @TheEegmen Рік тому

    отлично объяснил

  • @user-po3np6xv3f
    @user-po3np6xv3f 5 років тому

    Очень доступно и понятно

  • @NemoKiss
    @NemoKiss 2 роки тому

    Спасибо!!!! чётенько

  • @user-jq7sk2zo6c
    @user-jq7sk2zo6c 5 років тому

    хорошее объяснение бро так держать!

  • @ageevweb
    @ageevweb 4 роки тому

    спасибо!
    хорошо объяснил)

  • @variagc1232
    @variagc1232 4 роки тому

    Вот огромное СПАСИБО! А то функцию написал и вообще не понимаю, как она действует и почему... А ты разложил всё по полочкам! Только 'var' мозолит глаза... понимаю, видео записывалось давно) Кстати, очень удобно использовать RunJS. Пишешь код и он с права сразу показывает результат

  • @user-jd5ob1dz4n
    @user-jd5ob1dz4n 7 місяців тому

    лучшее видео!

  • @mykhailostepanishchev6472
    @mykhailostepanishchev6472 3 роки тому

    классно обьяснил,спасибо !

  • @user-zk5ok6wn2l
    @user-zk5ok6wn2l 6 років тому +8

    спасибо огромное за такие классные уроки!
    Уроки по React планируете записывать?

    • @WebEnv
      @WebEnv 3 роки тому

      Занимаетесь еще? Как успехи за два года?))

    • @Isten
      @Isten 3 роки тому

      @@WebEnv , я не он, но React/React Native(Next) + Redux (Thunk)+ Node (Express) + Mongo(Mongoose). П.с. за два года

    • @talivel118
      @talivel118 2 роки тому

      @@Isten 1

  • @dmytroNaholiuk
    @dmytroNaholiuk 4 роки тому

    Спасибо большое!

  • @ingvarins9923
    @ingvarins9923 2 роки тому

    благодарчик, братишка, ты шо гонишь!

  • @mstrcrow3505
    @mstrcrow3505 Рік тому

    спасибо - а то я ломал голову зачем их там отнимают друг от друга?) Круто

  • @asgard1428
    @asgard1428 2 роки тому +1

    Дмитрий добрый день.
    Можно на пальцах (как говориться) объяснить почему именно происходит перестановка? Как на это влияет знак? Кто сказал что они должны поменяться местами если больше, а не меняться если меньше? Вот сам процесс перестановки не понятен. (return-1 и return 1)?
    Спасибо.

  • @hammaren2678
    @hammaren2678 5 років тому

    Спасибо, разобрался)

  • @vitaercx
    @vitaercx 3 роки тому +2

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

  • @webrubin
    @webrubin Рік тому

    хорошее объяснение метода Sort . Ко
    гда будут еще уроки?

  • @user-dx5dx4wv8f
    @user-dx5dx4wv8f 3 роки тому

    супер! автору спасибо!))

  • @denwayde2829
    @denwayde2829 2 роки тому

    супер!

  • @user-py8uj1wc9f
    @user-py8uj1wc9f 3 роки тому

    спасибо! крутой ты мужик!!!!

  • @user-tx3re7bl1j
    @user-tx3re7bl1j 3 роки тому

    Спасибо

  • @johndoe4016qweasd
    @johndoe4016qweasd 3 роки тому

    Спасибо!

  • @konstantinkkk8397
    @konstantinkkk8397 4 роки тому +3

    почему у меня все наоборот, a это 3 а b это 7?

  • @novomiracle988
    @novomiracle988 4 роки тому

    спасибо !!!

  • @kishkishkishkishkish
    @kishkishkishkishkish 4 роки тому +1

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

  • @VassiliySmith
    @VassiliySmith 4 роки тому

    Привет всем. Не усвоил на счет -- return 1 / return -1. Автор говорит - что бы скомандывать что перестановка не нужна возвращаем -1 - это как вообще? Кто знает?

  • @angryshark5325
    @angryshark5325 4 роки тому

    от души

  • @user-sg7dn9wz2r
    @user-sg7dn9wz2r 10 місяців тому

    Была бы признательна, если бы Вы рассмотрели случай, когда в массивах есть повторяющиеся цифры

  • @vadimp1374
    @vadimp1374 2 роки тому

    лайк подписка)

  • @septembercult985
    @septembercult985 5 років тому +2

    Сначала было дохрена вопросов, потом пересмотрел видео, вроде, понял. Это железное правило .sort, что если он возвращает 1, то элементы меняются местами?

  • @user-uj7im9bz1s
    @user-uj7im9bz1s 5 років тому +1

    Не могу понять почему у меня все то что так же как на видео но в A и B попадают другие чисал в А = 3 а, в В = 7

    • @somedayiwill7361
      @somedayiwill7361 4 роки тому

      у меня точно также, почему?????

  • @leoibra6296
    @leoibra6296 4 роки тому

    Как return 1 влияет на перестановку я не понимаю.

  • @npocTpuM
    @npocTpuM Місяць тому

    Пересмотрел 5 видосов и даже на МДН не объяснили как идет сортировка. Только куча примеров, а то что попарно проверяется несколько циклов, нигде не нашел.

  • @VassiliySmith
    @VassiliySmith 4 роки тому

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

  • @TheKirk1989
    @TheKirk1989 5 років тому

    124-0 говорят сами за себя !

  • @HORIZON_OF_GAMES_WORLDS
    @HORIZON_OF_GAMES_WORLDS 5 років тому

    А нельзя arr.sort(a > b);?

    • @angryshark5325
      @angryshark5325 4 роки тому

      Нет, sort принимает callback. Можно сделать так:
      arr.sort((a, b) => a > b);

  • @talivel118
    @talivel118 2 роки тому

    Что у тебя с голосом?:)

  • @DzhigurdaAnton
    @DzhigurdaAnton 4 роки тому

    не аск, а юникод номер символа

  • @Mike37373
    @Mike37373 4 роки тому

    дим, почитай где нибудь туториал, как шрифт увеличивать при записи на ютуб

  • @TheKirk1989
    @TheKirk1989 5 років тому

    Хм, в общем то понял про сортировку с функцией , НО не понял вот что...
    var massiveA = [2, 4, 3, 8, 10, 6];
    document.write(massiveA.sort())
    результат - 10,2,3,4,6,8
    Я думал, что "пузырьковый" метод сделает всё по красоте, и 10 будет на последнем месте, а он почему-то перекинул его на первое... ЭТО КАК? Я так понимаю потому-что он сравнивает в 10(в числе десять) ---- "1" и уже исходя из этого не продолжает сравнение, и выставляет 10 на первое место, потому-что по первой цифре 10 меньше всех??

    • @hatrick3117
      @hatrick3117 5 років тому

      Бро. ты же тот самый пузырьковый метод не заюзал. просто сорт вызван у тебя.
      massiveA.sort((a,b)=>{return a-b})

    • @TheKirk1989
      @TheKirk1989 5 років тому

      а ты шаришь в js? или учишься?

    • @hatrick3117
      @hatrick3117 5 років тому

      учусь в свободное время от работы

    • @TheKirk1989
      @TheKirk1989 5 років тому

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

    • @hatrick3117
      @hatrick3117 5 років тому

      Че там у тебя? геттеры и сеттеры это наверное как-раз то где я остановился в изучении, ибо не встречался особо с ООП на практике, в библиотеках разве что. кидай, гляну.

  • @VassiliySmith
    @VassiliySmith 4 роки тому

    Досмотрел видео. Короче говоря, автор сам не знает как это работает "под капотом"

  • @55sintez
    @55sintez Рік тому

    Зачем делать функцию которая сортирует числа как текст и не сделать функцию, которая сортирует числа как числа, ппц

  • @user-xc8ts4fu7j
    @user-xc8ts4fu7j 3 роки тому

    Спасибо большое!

  • @11-april
    @11-april 4 роки тому

    Спасибо