我想查找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'。 –