递归求和
// 奇数求和(oddsum),偶数求和(evensum),求和sum
function oddsum() {
if(n % 2 === 0) {
n--
}
if (n === 1) {
return 1
}
return n + oddsum(n - 2)
}
多维数组扁平化
// flatten 压平,使变平
// 第一种 while 拓展运算符 concat
function flatten(arr) {
while(arr.some(item => Array.isArray(item))) {
arr = [].concat(...arr)
}
return arr
}
// 第二种 递归
function flatten(arr) {
let result = []
arr.forEach(item => {
if (Array.isArray(item)) {
result = result.concat(flatten(item))
} else {
result.push(item)
}
})
return result
}