저는 재귀 함수가 있으며 완료되면 최신의 결과를 반환 할 수 있어야합니다.resursive 함수의 결과를 반환하십시오.
let called 결과가 커집니다.
성장이 끝나면 반환해야합니다.
저는 재귀 함수가 있으며 완료되면 최신의 결과를 반환 할 수 있어야합니다.resursive 함수의 결과를 반환하십시오.
let called 결과가 커집니다.
성장이 끝나면 반환해야합니다.
const target= 10;
const list= [2, 5];
const zero = 0;
let results = [];
function test(amount, list, start, list) {
let next_results = [];
for (let i = start; i < collection.length; i++) {
let left = amount - collection[i];
let currentList = list.slice(zero);
currentList.push(collection[i]);
if (left < zero) return [];
if (left === zero) {
next_results.push(list2);
results = results.concat(next_results);
return results;
} else {
let newr = test(left, list2, i, collection);
if (newr.length) {
next_results = next_results.concat(newr);
}
}
}
return results;
}
//Start point
test(target, [], zero, list);
결과 :
[ { Combinations: [ 2, 2, 2, 2, 2 ] }, { Combinations: [ 5, 5 ] } ]
이것은 일반적인 생각이다. 재귀 함수는 값을 반환해야하거나 값을 전달 특정 조건 호출 자체에서 ... 최종 제품은 모든 재귀 반복 그래도 난 결과를 초래하는 기능을 필요
function recursive(v){
if(condition) return recursive(v++);
else return v;
}
var n = recursive(1);
후 최종 결과가 될 것입니다. – AngularM
나는 그것을 얻을 수 있을지 잘 모르겠다. 완료되면 이미 돌아 오지 않습니까? 실제로 반환 된 값을 로깅하는 대신 console.log가 함수 내에 있습니다 -> https://jsfiddle.net/adeneo/179ksdLa/1/ – adeneo