An important feature of Array.sort that you should always remember | JavaScript Methods
HTML-код
- Опубликовано: 8 фев 2025
- Видео о JavaScript методе Array.sort. Одна из его важных особенностей заключается в том, что он меняет исходный массив. Если об этом забыть, это может вызвать очень неприятные сайд эффекты.
В этом видео мы также разберем, как решить эту проблему с помощью современного метода ES6.
Код из видео: codepen.io/puz...
---
Если видео было для вас полезным, ставьте лайк и поделитесь им с друзьями.
Подписывайтесь на наш канал: bit.ly/fs-ytb
---
Присоединяйтесь к нам в соцсетях:
FB: / frontendscience
Instagram Сергея Пузанкова: / puzankovcom
Заходите на наш сайт: frontend-scienc...
---
Song: DayFox - Crushed Hearts (Vlog No Copyright Music)
Music provided by Vlog No Copyright Music.
Video Link: • DayFox - Crushed Heart...
Друзья, понравилось видео? Напишите в комментариях, о чем еще хотели бы услышать в следующих роликах!
Здравствуйте, отличный канал и видео уроки. Хорошо помогает ваша рубрика решения задач. Продолжайте в том же духе!)
Асад Дильмурадов Благодарим за поддержку! Будем стараться!
Про інші методи, теж було б цікаво! (reduce, filter, apply...) Дякую!
Олег Ганяк Принято!)
Отличное видео, коротко и никакой воды!
Благодарим! Приятно слышать! Заказывайте новые темы
Я: тю, як можна не знати, що sort() мутує масив?
Теж я: другий день не можу знайти баг, чому список туду виводиться неправильно.
Ігор Іванов True story!
Отличный канал и видео уроки!!
Спасибо, что смотрите!
Очень полезное видео. Большое спасибо!
хороший ребус)) спасибо)
обожаю этот канал! спасибо большое за ваш труд!
Благодарим за поддержку! Очень приятно ☺️
Спасибо за это видео
Еще вариант - поменять местами методы sort и map. Тогда sort будет использовать не исходный массив, а тот, который вернет map :)
Как один из вариантов да, может быть. Но дело же не в самом мапе, это только как пример я привел. Вместо мапа может быть что угодно и в очень разных последовательностях. Здесь главное - понять и знать, что sort меняет исходный массив.
Спасибо большое 😊
Спасибо! Очень информативный ролик!
Очень круто объяснил. Спасибо!!!
Супер обьяснил!спасибо
Nice video my Brother.
А как насчёт создания копии массива при помощи метода slice? Это актуально или лучше использовать spread?
Спасибо за видео 🙂
Это уже как Вам удобнее. Актуальны оба варианта! :)
Видео - огонь! Спасибо! Хотелось бы ещё на процесс сортировки массива через цикл посмотреть.Там как-то всё страшно выглядит. И как вы думаете, Сергей, на собесе могут спросить как сортировать массив не через sort, а именно при помощи цикла?
Могут все что угодно спросить, но обычно разные алгоритмы сортировок спрашивают на фуллстека или бэкендера. На фронтенд собеседованиях такое не часто задают
@@frontendscience спасибо за ответ!
Thank you so much!)
Спасибо
супер
Благодарю за поддержку
Я не понимаю как работает сорт если ему колбэк не передать на цифрах. Там какое то неадекватство происходит =/
Все очень просто - он сортирует все как будто это буквы. Как в телефонной книге: Андрей будет идти раньше Анны. Он сравнит первые буквы, потом вторые, потом третьи и тут увидит что "д" должно быть раньше "н". Точно также будут сортироваться цифры. 111 будет идти раньше 12. так как при сравнении второго символа 1 идет раньше 2ки
@@frontendscience так просто! Спасибо!)
Просто, перед любыми действиями, в которых вы не уверены, прогуглите их.
единственный нормально объяснивший здесь
Дякую!
музыка на фоне сбивает
А как сделать чтобы было меньшее,большее,среднее число ??
Не совсем понятно, что имеется ввиду если в массиве 10 чисел. Что из этого среднее? Но могу предположить что если нужна нелинейная сортировка, то надо писать свою функцию сортировки с кастомным алгоритмом.
@@frontendscience В массиве 3 числа.Как написать сортировку?? Такого решения я в RUclips не нашёл.
@@саксасксон codepen.io/puzankov/pen/OJRpNaq?editors=0011
@@frontendscience Спасибо большое)))
@@саксасксон для большего количества чисел можно сделать так :
let arr = [2, 6, 1, 3, 4];
let [min, ...rest] = arr.sort((a, b) => a - b);
const max = rest[rest.length - 1];
rest.splice(-1, 1)
let result = [min, max, ...rest];
console.log(result);
можно два лайка поставить? спасибо!!
А где знаменитое "та-дааам"?))
Array.toSorted()