斐波那契数列:
1,1,2,3,5,8,13,21,34......
function fi(n){
if(n == 1 || n == 2) return 1;
return fi(n-1) + fi(n-2)
}
console.log(fi(3)) // 2
数组求和:
function sum(arr){
if(arr.length == 0){
return 0
}else if(arr.length == 1){
return arr[0]
}else{
return arr[0] + sum(arr.slice(1))
// slice(1) 截取数组从第一个开始到末尾的数据
}
}
console.log(sum([1,2,3])) // 6
数组扁平化:
const res = [];
const fn = arr => {
for (let i = 0; i < arr.length; i++) {
if (Array.isArray(arr[i])) {
fn(arr[i]);
} else {
res.push(arr[i]);
}
}
}
fn([1,[2,3]]);