Доброго времени суток, подвернулась такая задача переместить элемент массива в начало. Вроде сделал, но может есть более красивый способ переместить элемент в начало?
var arr = [0, 1, 2, 3, 4, 5];
console.log(arr);
var removed = arr.splice(3, 1);
arr.unshift(removed[0]);
console.log(arr);
Подойдет если элементов будет больше чем 1
var arr = [0, 1, 2, 3, 4, 5]
arr.unshift(...arr.splice(3,1));
console.log(arr);
Можно отсортировать массив, указав что нужное значение должно быть первее остальных.
var arr = [0, 1, 2, 3, 4, 5];
var value = 3;
arr.sort(function(x,y){
return x == value ? -1 : y == value ? 1 : 0;
});
console.log(arr);
Можно вырезать из масива нужны элемент и засунуть его в началу использованием 2ух splice'ов
var arr = [0, 1, 2, 3, 4, 5];
var index = 3;
arr.splice(0, 0, arr.splice(index, 1)[0]);
console.log(arr);
var a = [0, 1, 2, 3, 4, 5];
console.log(a);
var b = [a[3]].concat(a.slice(0, 3), a.slice(4))
console.log(b);
.as-console-wrapper.as-console-wrapper { max-height: 100vh }
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости