Javascript JS+;数学:计算子串的排列或组合

Javascript JS+;数学:计算子串的排列或组合,javascript,math,Javascript,Math,我不确定“composition”是否是正确的单词,但我想扫描一个字符串,以获得所有可能的子字符串,如 前 我对dcba这样的结果不感兴趣,因此我不寻找排列。。。 它的功能是什么 谢谢 要获得所有可能的子字符串(没错,这不是“排列”),只需使用两个嵌套循环作为开始索引和结束索引: var str = "abcd"; var substrings = [], len = str.length; for (var i=0; i<len; i++) for (var j=i+1;

我不确定“composition”是否是正确的单词,但我想扫描一个字符串,以获得所有可能的子字符串,如 前

我对dcba这样的结果不感兴趣,因此我不寻找排列。。。 它的功能是什么


谢谢

要获得所有可能的子字符串(没错,这不是“排列”),只需使用两个嵌套循环作为开始索引和结束索引:

var str = "abcd";
var substrings = [],
    len = str.length;
for (var i=0; i<len; i++)
    for (var j=i+1; j<=len; j++)
        substrings.push(str.slice(i, j));

substrings;
// ["a", "ab", "abc", "abcd", "b", "bc", "bcd", "c", "cd", "d"]
var str=“abcd”;
var子字符串=[],
len=str.长度;

对于(var i=0;i这很容易,你也可以自己做:

var str = "abcd";
var substrings = [];
for (var i = 0; i < str.length; i++){ 
     for (var j = i + 1; j <= str.length; j++)
     substrings.push(str.substring(i, j));
}
var str=“abcd”;
var子字符串=[];
对于(var i=0;i对于(var j=i+1;j你试过了吗?你确定你不想要‘ac’、‘ad’、‘abd’、‘acd’、‘bd’?@kennebec:他要的是子字符串,而不是子序列。对不起,我没有找到前面的答案。我的答案和你的答案完全一样,真是巧合:)@kennebec:您错过了哪种组合?子字符串数组正好包含OP想要的输出。
var str = "abcd";
var substrings = [];
for (var i = 0; i < str.length; i++){ 
     for (var j = i + 1; j <= str.length; j++)
     substrings.push(str.substring(i, j));
}