Udemy ์๊ณ ๋ฆฌ์ฆ ๊ฐ์์ ๋์ค๋ ๋ฌธ์ ํ์ด
์ด๋ ค์ด๊ฑด ๋ชป ํ๊ณ ๋์ด๊ฐ๋ค... ์ฌ๊ท ์ด๋ ต๋ค..
function reverse (str) {
result = str[str.length-1]
if(str.length <= 1) {
return result
}
result += reverse(str.slice(0, str.length-1))
return result
}
console.log(reverse('abc')) // cba
์ธ์๋ก ๋ค์ด์จ ๋ฌธ์์ด์ ๊ฑฐ๊พธ๋ก ๋ฐํํ๋ ํจ์๋ก ์ ์ธ
function someRecursive(arr, func){
result = false
if(func(arr[0])){
result = true
return result;
}else{
result = false
}
if (arr.length > 1){
someRecursive(arr.slice(1), func)
}
return result
}
const isOdd = val => val % 2 !== 0;
console.log(someRecursive([1,2,3,4], isOdd)) // true
console.log(someRecursive([4,6,8,9], isOdd))// true
console.log(someRecursive([4,6,8], isOdd)) // false
console.log(someRecursive([4,6,8], val => val > 10)); // false
์ฒซ๋ฒ์งธ ์ธ์๋ก ๋ค์ด์จ ๋ฐฐ์ด ๊ฐ๋ค์ด ์ฝ๋ฐฑ ํจ์์ ๋ง์ง ์์๊ฒ ํ๋๋ผ๋ ์์ผ๋ฉด true ๋ชจ๋ ํด๋นํ์ง ์์ผ๋ฉด false๋ฅผ ๋ฐํํ๋ ํจ์๋ฅผ ์ฌ๊ท๋ฅผ ์ด์ฉํ์ฌ ๊ตฌํ
function capitalizeFirst (arr) {
var result = []
if(arr.length > 1){
result.push(arr[0][0].toUpperCase() + arr[0].slice(1))
result = result.concat(capitalizeFirst(arr.slice(1)))
return result
}
result = result.concat(arr[0][0].toUpperCase() + arr[0].slice(1))
return result
}
console.log(capitalizeFirst(['car','taco','banana'])); // ['Car','Taco','Banana']
์ธ์๋ก ๋ค์ด์จ ๋ฐฐ์ด์ ๋ฌธ์์ด๋ค์ ์ฒซ ๊ธ์๋ฅผ ๋๋ฌธ์๋ก ๋ณ๊ฒฝํ ๋ฐฐ์ด๋ก ์ถ๋ ฅ