我想查找JavaScript中数组元素位置的所有唯一组合。查找数组的所有*唯一组合
这是我的数组:
var places = ['x', 'y', 'z'];
我想找到下列组合:[0,1],[0,2],[1,2]。
目前我有工作,但是稍微笨重:
for (var i = 0; i < places.length; i++) {
for (var j = 0; j < places.length; j++) {
if ((j > i) && (j != i)) {
console.log(i, j);
}
}
}
有没有更合适的方法来做到这一点?
该数组是否是唯一的? – Raynos
你不需要j!= i,每当你达到它时,它都会评价为false。任何时候j == i,j> i将评估为false,并且第二个条件将与'if'语句的其余部分一起被跳过。虽然,您可以只使用jodaka的建议并完全消除if语句 –
您并未比较数组atm的值。如果你想比较这个值,使用'places [i]'和'places [j]'而不是'i'和'j'。 –