Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 29.04.2012, 20:29
Аспирант
Отправить личное сообщение для Sergey999 Посмотреть профиль Найти все сообщения от Sergey999
 
Регистрация: 25.12.2011
Сообщений: 75

Выборка из массива
Можно ли какими-то стандартными способами или как можно более лаконичными сделать из массива выборку 15 элементов, например:

1. Array(30) - выбираем каждый второй
2. Array(75) - выбираем 2,5,7,10 и т.п.

То есть нужно выбрать эдакие средние значения равномерно по всему масиву учитывая что сам он может быть любой длинны и 50 и 150 элементов, на как это красиво сделать и лаконично...?
Ответить с цитированием
  #2 (permalink)  
Старый 29.04.2012, 21:21
Аватар для Gvozd
Матрос
Отправить личное сообщение для Gvozd Посмотреть профиль Найти все сообщения от Gvozd
 
Регистрация: 04.04.2008
Сообщений: 6,246

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);
Ответить с цитированием
  #3 (permalink)  
Старый 30.04.2012, 10:30
Лаборант :-)
Отправить личное сообщение для Pavel M. Посмотреть профиль Найти все сообщения от Pavel M.
 
Регистрация: 08.11.2011
Сообщений: 806

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);
Ответить с цитированием
  #4 (permalink)  
Старый 30.04.2012, 10:59
Аватар для Gvozd
Матрос
Отправить личное сообщение для Gvozd Посмотреть профиль Найти все сообщения от Gvozd
 
Регистрация: 04.04.2008
Сообщений: 6,246

Pavel M.,
да, уместнее
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Выборка массива данных с inputa Beriagts jQuery 9 05.08.2011 13:04
Выборка из массива vistecter Общие вопросы Javascript 1 20.07.2011 12:01
Можно ли как для произвольного массива создавать вызовы функций , имеющих на входе kefi Общие вопросы Javascript 3 17.04.2009 16:53
вставка элементов массива в текстовую форму по клику olezyk Общие вопросы Javascript 3 21.03.2009 22:01