Необходимо отсортировать массивы по числовому показателю в последнем индексе каждого массива. То есть, в массиве mass
, в коде ниже, mass[2]
должен оказаться на mass[0]
, а остальные должны сместиться на 1 ступень. Пытался сделать при помощи sort
, но особым успехом это не увенчалось.
var mass = [
["Вася", "Петров", "Александрович", "10"],
["Петя", "Иванов", "Петрович", "15"],
["Владимир", "Ленин", "Ильич", "9"] ]
mass.sort(compare);
function compare(a, b){
if (a[a.length-1] > b[b.length-1]) return 1;
if (a[a.length-1] < b[b.length-1]) return -1;
}
console.log(mass);
Для сравнения необходимо приводить строку, которой представлен последний элемент массива, к числу.
В коде ниже это делается за счет +
перед a[a.length-1]
, ну и я слегка упростил функцию compare
var mass = [
["Вася", "Петров", "Александрович", "10"],
["Петя", "Иванов", "Петрович", "15"],
["Владимир", "Ленин", "Ильич", "9"] ]
mass.sort(compare);
function compare(a, b){
return +a[a.length-1] - b[b.length-1]
}
console.log(mass);
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Первый раз столкнувшись с замыканиями и не зная, что это такое, пробовал синтаксически понять, что происходит в коде вида: (function(){})()Известно,...
Есть контейнер фиксированной шириныВ нем нужно расположить 3 элемента: