UNPKG

@appworks/doctor

Version:

Analyse and running codemods over react/rax projects, troubleshooting and automatically fixing errors

28 lines (27 loc) 932 B
"use strict"; // Case1: calculate dimensions is 1 // return current score // // Case2: calculate dimensions more than 1 // Weighted Average: // 0.9 (fixed weight, for all dimensions) + 0.1 (additional weight, for the lowest score) // For example, the scores are: 90, 90, 20 (the lowest score is 20) // (90*(0.9/3) + 90*(0.9/3) + 20*(0.9/3)) + 20 * 0.1 = 62 Object.defineProperty(exports, "__esModule", { value: true }); var ADDITIONAL_WEIGHT = 0.1; function getFinalScore(arr) { var finalScore = 0; if (arr.length === 1) { finalScore = arr[0]; } else { arr.sort(function (a, b) { return a - b; }).forEach(function (score, index) { if (index === 0) { finalScore += score * ADDITIONAL_WEIGHT; } finalScore += (1 - ADDITIONAL_WEIGHT) / arr.length * score; }); } return Number(finalScore.toFixed(2)); } exports.default = getFinalScore;