Javascript:如何在每种可能的方式填充数组?

问题描述 投票:-2回答:1

我有一个长度为16的数组,我需要获得0到256范围内的所有元素组合。更确切地说,我需要以下数组

[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]
[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1]
...
[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,256]
[0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0]
...
[256,256,256,256,256,256,256,256,256,256,256,256,256,256,256,256]

有一个简单的方法吗?

javascript arrays combinations
1个回答
0
投票

你可以使用这样的迭代函数:

function next(array, max) {
  for (let i = array.length - 1; i >= 0; i--) {
    array[i]++
    if ((array[i] %= max) !== 0) break
  }
  
  return array
}

let array = Array(3).fill(0)

do {
  console.log(next(array, 3).join())
} while (array.join('') !== '000')
© www.soinside.com 2019 - 2024. All rights reserved.