2017-08-11 104 views
-2

我已經搜索了一個小時+爲此,並找不到一個有效的。我需要一個函數來生成一個字符串的每個組合,並帶有一定數量的字符。javascript得到了字符串的所有可能組合

例如,如果我在 「ABC」 過去了,2,它將返回

[ 「AB」, 「AC」,

「BA」, 「BC」,

「 ca「,」cb「]

作爲字符串數組。 謝謝你的幫助,非常感謝!

+5

顯示你做了什麼至今 – Observer

回答

1

試試這個:

getCombinations('abc',2); 

function getCombinations(string,length){ 

    var combinations = []; 
    function findCombinations(token,string){ 
     if(token.length >= length){  
      combinations.push(token); 
     }else{ 
      for(var i=0;i<string.length;i++){ 
       findCombinations(token + string.charAt(i),string.slice(0, i) + string.slice(i+1)); 
      } 
     } 

     return combinations; 
    } 

    return findCombinations('',string); 
} 
+0

太謝謝你了!它完美的工作!對此,我真的非常感激 – Goel

相關問題