Минимальные элементы из массива
Подскажите пожалуйста, что не так. Должно выводить массив из 4 минимальных элементов, а вывод массив из одного значения, повторяющегося 4 раза.
array_num - изначальный массив array_total - конечный массив
var array_total = [], index, min = 9999999999;;
while (array_total.length < 4) {
for (var i = 0; i < array_num.length; i++) {
if (min > array_num[i])
{
min = array_num[i];
index = i;
}
}
array_total.push(min);
delete array_num[index];
}
alert(array_total);
|
var array_total = array_num.sort(function(a, b) {
return +a > +b;
}).splice(0, 5);
//ES6 let array_total = array_num.sort((a, b) => +a > +b).splice(0, 5); |
Спасибо за ваш способ.
Но было интересно понять почему тот способ не работает. Вообщем то было достаточно внести переменную min в while. |
| Часовой пояс GMT +3, время: 02:31. |