Как отсортировать массив объектов по вычисленному значению - PullRequest
0 голосов
/ 13 июня 2018

Здравствуйте. Я пытаюсь отсортировать массив объектов по значению, вызвав функцию, которая вычисляет среднее значение в этом свойстве объектов, которое является массивом целых чисел, а затем сортирует его в порядке убывания.

// SORT BY SCORE BY MOST SCORED
function sortByScoreDown() {
    arrayLivros.sort((a, b) => fullscoreForSort(b._scores) - fullscoreForSort(a._scores));
}

// CALCULATE FULLSCORE
function fullscoreForSort(givenScores) {
    let score = 0;
    let total = givenScores.length - 1; // -1 BECAUSE BOOK._SCORES STARTS WITH AN ARRAY WITH 0 AS FIRST VALUE FOR SIMPLIFICATION
    if (total != 0) {
        let summedScore = givenScores.reduce((sum, add) => sum + add);
        let score = summedScore / total;   
    }
    return score;
}

// VALUES
newBook1 = {_title: book1,
            _scores: [0,100,50]}
newBook2 = {_title: book2,
            _scores: [0,100,100]}
newBook3 = {_title: book3,
            _scores: [0,50,50]}
newBook4 = {_title: book3,
            _scores: [0,30,30]}

arrayBooks = [newBook1, newBook2, newBook3, newBook4];


// EXCPECTED RETURN
arrayBooks = [newBook2, newBook1, newBook3, newBook4];

Заранее спасибо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...