2017-08-11 99 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

相关问题