Как разделить масив чисел на подмасивы по три елемента с разным порядком?

// Есть масив чисел:
const ls = [51, 56, 58, 59, 61]
// Как сделать так чтоб получилось так:
[51,56,58], [51,56,59], [51,56,61], [51,58,59], [51, 58,61], [51,59,61], [56,58,59], [56,58,61], [56,59,61], [58,59,61]

Ответы (1 шт):

Автор решения: nazarpunk

На enSO был похожий вопрос, можете там код посмотреть.

const array = [51, 56, 58, 59, 61];
const results = [];

for (let i = 0; i < array.length - 1; i++) {
  for (let j = i + 1; j < array.length; j++) {
    for (let k = j + 1; k < array.length; k++) {
      results.push([array[i], array[j], array[k]]);
    }
  }
}

console.log(results);

→ Ссылка