0

I have tried everything I know but I can't seem to get my Math.min to return anything but NaN, yes I know returning NaN is because a value can't be converted to a number. My next question would be isn't the cleanArray output array numbers?

$('#fiveNumButton').click(function () {

let stringArray = $('#fiveInput').val().split(' ');

let numArray = stringArray.map(function(x) {
    return parseInt(x, 10);
});

let cleanArray = numArray.filter(function (val) {
    return val;
});

if ($("#fiveInput").val().match(/^[0-9 ]+$/) && cleanArray.length >= 5) {

    $('#pickFiveResults').html("Smallest Number : " + Math.min(cleanArray));
    console.log(cleanArray);
} else {
    console.log("wrong");
}

});

John
  • 1
  • Try `Math.min(...cleanArray)` – Gerardo Furtado Nov 18 '17 at 05:19
  • Why does this work am I missing something here or am I just a complete idiot lol – John Nov 18 '17 at 05:21
  • 1
    Don't call yourself an idiot... That's easy to explain, I'm sure you'll understand it: you have to pass values to Math.min. For instance `Math.min(1, 2, 3, 4)`. However, you're passing an **array** to it, like `Math.min([1, 2, 3, 4])`. That won't work. – Gerardo Furtado Nov 18 '17 at 05:23

0 Answers0