У меня есть массив объектов, подобный этому:
let guests = [{name: 'a'},{name: 'c'},{name: 'b'}]
Я экспериментирую, чтобы отсортировать его по убыванию, а затем по возрастанию:
let guests = [{
name: 'a'
}, {
name: 'c'
}, {
name: 'b'
}]
console.log(guests)
var var1 = guests.sort((a, b) => a.name < b.name)
console.log(var1)
var var2 = guests.sort((a, b) => a.name > b.name)
console.log(var2)
Результат для всех трех консолей таков:
[{name: 'a'}, {name: 'b'}, {name: 'c'}]
Чего я не понимаю, так это того, почему все три console.log покажут мне отсортированный в порядке возрастания. Два файла console.log происходят до сортировки.
Теперь я понимаю, что с массивом манипулируют после сортировки. Но что я не понимаю, так это почему будет console.log перед сортировкой. Чтобы сравнить с нормальным поведением, которое я ожидаю, я использовал массив строк.
let guests = ['a','c','b']
jsfiddle пример: пример
Здесь console.log имеет больше смысла для меня.