JavaScript 数组 - 查找 2 个元素的组合数

标签 javascript arrays

我来自 Ruby 背景,它具有 enumerable 类。在 Ruby 中,我可以轻松找到数组元素的组合。

array.combination(2).count

我知道 JavaScript 没有这种内置函数,所以我想知道如何在 JS 中实现它。我在想类似的事情

我有一个数组如下

var numbers = [9,7,12]
var combos = []
for (var i = 0; i < numbers.length; i++)  {
  combos.push([numbers[i], numbers[i+1])
}

顺便说一句,可能的组合是

[9,7], [9,12] and [7,12]

因此通过对该数组调用长度函数,将返回 3。

有什么想法吗?

最佳答案

怎么样:

for (var i = 0; i < numbers.length; i++)
    for (var j = i + 1; j < numbers.length; j++)
        combos.push([numbers[i], numbers[j]]);

关于JavaScript 数组 - 查找 2 个元素的组合数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29169011/

相关文章:

javascript - 在 Javascript 中解码 JSON 字符串

javascript - 多个输入框 - alertifyjs/Jquery

javascript - JS中如何嵌套对象?

java - 在返回变量之前检查数组中的所有位置

arrays - 将附加数组保存到 NSUserdefaults 不返回附加数组

Javascript 多词正则表达式

javascript - 如何在 JavaScript 中实现真正的 sleep()?

c - 交换 char * array[ ] 导致问题

python - Windows 7 python 32 上 python.exe 的内存 - Numpy 仅使用一半的可用内存?

python - 使用 NumPy 查找条件为 True 的范围