jQuery addClass example

Change class name on click in jQuery

by Dmitri Ganenco

CSS

body {
  background: #20262E;
  padding: 20px;
  font-family: Helvetica;
}

#banner-message {
  background: #fff;
  border-radius: 4px;
  padding: 20px;
  font-size: 25px;
  text-align: center;
  transition: all 0.2s;
  margin: 0 auto;
  width: 300px;
}

button {
  background: #0084ff;
  border: none;
  border-radius: 5px;
  padding: 8px 14px;
  font-size: 15px;
  color: #fff;
}

#banner-message.alt {
  background: #0084ff;
  color: #fff;
  margin-top: 40px;
  width: 200px;
}

#banner-message.alt button {
  background: #fff;
  color: #000;
}

JavaScript

function getNos(arr){

if (!Array.isArray(arr) || arr.length == 0 || arr.length == 1 || (arr.every(c => !isNaN(c)) == false)) {
    throw 'Invalid Input';
} else {

    var result;
    var uniqueVals = Array.from(new Set(arr));
    var highest = highestVal(arr);
    var lowest = lowestVal(arr);

    if (uniqueVals.length == 1) {
        result = arr[0] + " " + arr[0];
    } else if (arr.length == 2 || uniqueVals.length == 2) {
        result = highest + " " + lowest;
    } else {
        arr = arr.filter(item => ((item !== highest) && (item !== lowest)));
        var secondHighest = highestVal(arr);
        var secondLowest = lowestVal(arr);

        if (arr.length == 1) {
            arr = arr.slice(arr.indexOf(secondHighest));
            result = highestVal(arr);
        } else {
            result = secondLowest + " " + secondHighest;
        }
    }
    return result;
}
}
function highestVal(a) { return a.reduce((a, b) => a > b ? a : b ) };
function lowestVal(a) { return a.reduce((a, b) => a < b ? a : b ) };

console.log(getNos([5,"5",8]));