Отсортировать по отдельному полю

131
13 января 2021, 06:40

У меня есть массив объектовlet arr = [], в нем находятся такие объекты:

class Obj 
{ 
  constructor() 
  { 
    this.number = 0; 
    this.value = "Value"; 
  } 
}

У каждого объекта есть поле number, и нужно отстортировать по нему, можно ли тут как-то с методом sort либо еще как-то?

В коментариях сообщили что можно так: arr.sort((a,b) => a.value-b.value), но я пробовал вот так: objs = objs.sort((a,b) a.number-b.number) но массив остается не отсортированный

Answer 1

class Obj 
{ 
  //let number; 
  //let value; 
  constructor(n,v) 
  { 
    this.number = n; 
    this.value = v; 
  } 
} 
 
let objects= []; 
objects.push(new Obj(2,"2")); 
objects.push(new Obj(3,"3")); 
objects.push(new Obj(1,"1")); 
objects.push(new Obj(4,"4")); 
 
let objs = objects.sort((a,b) => a.number-b.number); 
 
console.log(objs);

READ ALSO
Тройка вопросов по CSS [закрыт]

Тройка вопросов по CSS [закрыт]

Хотите улучшить этот вопрос? Переформулируйте вопрос так, чтобы он был сосредоточен только на одной проблеме

194
Как реализовать такое на bootstrap4?

Как реализовать такое на bootstrap4?

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

170
Sass ссылка на родителя в псевдоклассе

Sass ссылка на родителя в псевдоклассе

почему в псевдоклассе не работает ссылка на родителя? И как это вылечить?

194
Рисование на виджете вне функции paintEvent ()

Рисование на виджете вне функции paintEvent ()

Возможно ли рисовать на виджете при помощи QPainter вне функции paintEvent ()? В документации написано, что из всех стандартных бэкэндов, QWidget единственный,...

184