Что выведет код Middle Объекты и массивы обновлено

Стабильность сортировки

Вопрос

Что выведет код? По строке на каждый вывод.

const people = [
  { n: 'а', age: 30 },
  { n: 'б', age: 20 },
  { n: 'в', age: 30 },
  { n: 'г', age: 20 },
];
console.log(people.slice().sort((x, y) => x.age - y.age).map((p) => p.n).join(''));
console.log([3, 1, 2].sort().join(''));

Попробуйте сами

Напишите, что выведет код: каждый вывод с новой строки.

Показать ответ и разбор

Коротко

Код выведет: бгав, 123. Почему так Стабильность гарантирована спецификацией с ES2019: равные по компаратору элементы сохраняют исходный порядок.

Что выведет

бгав
123

Разбор

Почему так

Стабильность гарантирована спецификацией с ES2019: равные по компаратору элементы сохраняют исходный порядок. На этом строится многоуровневая сортировка последовательными проходами.

Вывод

бгав
123

Ответьте сами, а не прочитайте

В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.