为了账号安全,请及时绑定邮箱和手机立即绑定

JS递归

利用 递归算法      列出a,b,c,d,e,f,g,h  8个字母,任意取出5个字母的 所有组合      在chrome控制台 显示输出即可

正在回答

1 回答

var arr = new Array('a', 'b', 'c', 'd', 'e', 'f', 'g', 'h');

function func(aInx, bInx) {

//console.log(aInx + '-' + bInx);

if ((arr.length - aInx < 5) || (bInx + 4) > arr.length) {

//return;

if ((aInx + 4) > arr.length) {

return;

}

if((bInx + 4) > arr.length){

//console.log(bInx);

aInx++;

bInx = aInx+1;

func(aInx, bInx);

return;

}

}

var obj2 = arr.slice(aInx, aInx + 1).concat(arr.slice(bInx, bInx + 4)).join();

console.log(obj2);

bInx++;

func(aInx, bInx);

}

func(0, 1);


0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
JavaScript深入浅出
  • 参与学习       281099    人
  • 解答问题       1020    个

由浅入深学习JS语言特性,且解析JS常见误区,从入门到掌握

进入课程
意见反馈 帮助中心 APP下载
官方微信