Выборка из массива
Можно ли какими-то стандартными способами или как можно более лаконичными сделать из массива выборку 15 элементов, например:
1. Array(30) - выбираем каждый второй 2. Array(75) - выбираем 2,5,7,10 и т.п. То есть нужно выбрать эдакие средние значения равномерно по всему масиву учитывая что сам он может быть любой длинны и 50 и 150 элементов, на как это красиво сделать и лаконично...? |
array = [1,2,3,4,5,6]; length = 2; arr = array.reduce(function(arr, el, index, array){ var count = array.length/length; index++; if(index - count*~~(index/count) < 1) { arr.push(el); } return arr; }, []); console.log(arr); |
Gvozd,
может быть здесь вместо reduce уместнее filter ? var array = [1,2,3,4,5,6], length = 2; arr = array.filter(function (el, index, arr) { var count = arr.length/length; index++; return index - count * ~~(index/count) < 1; }); alert(arr); |
Pavel M.,
да, уместнее |
Часовой пояс GMT +3, время: 01:13. |