๐ Day 7 Algorithm Review
๐ Replit
str.split(", ")
const handleEdit = (nickname, interests) => {
console.log(interests.split(", ")) // [ '๋ฐฉํ์ถ', 'ํ
๋์ค', '๋ฉ ๋๋ฆฌ๊ธฐ' ]
const handleObj = {
nickname: nickname,
interests: interests.split(', '),
bio: `์ ๋๋ค์์ ${nickname}์
๋๋ค. ์ทจ๋ฏธ๋ ${interests.split(', ')}์
๋๋ค.`
}
return handleObj
}
handleEdit('๋๋น', '๋ฐฉํ์ถ, ํ
๋์ค, ๋ฉ ๋๋ฆฌ๊ธฐ')
// {
// nickname: '๋๋น',
// interests: [ '๋ฐฉํ์ถ', 'ํ
๋์ค', '๋ฉ ๋๋ฆฌ๊ธฐ' ],
// bio: '์ ๋๋ค์์ ๋๋น์
๋๋ค. ์ทจ๋ฏธ๋ ๋ฐฉํ์ถ,ํ
๋์ค,๋ฉ ๋๋ฆฌ๊ธฐ์
๋๋ค.'
// }
str.trim()
const example = " asdf asdf "
example.trim() // Remove both first and last indent
example.trimStart() // Remove first indent
example.trimEnd() // Remove last indent
๐ Class
isNaN vs. Number.isNaN
// isNaN
// 1. ํด๋น ๋ฐ์ดํฐ๊ฐ NaN ๊ฐ์ ๊ฐ์ง๋์ง ํ๋จ
// 2. ์ถ๋ ฅ๊ฐ์ด false์ผ ๋๋ ์ซ์๊ฐ ๋ง๋ค. true์ผ ๋๋ NaN๊ฐ์ ๊ฐ์ง๋ค
isNaN("a") //true
isNaN("10") //false
// Number.isNaN
// 1. ํด๋น ๋ฐ์ดํฐ๊ฐ Number ํ์
์ด๋ฉด์ NaN ๊ฐ์ด ๋ง๋์ง๋ฅผ ๊ฒ์ฆ
// 2. NaN ๊ฒ์ฆ์ ์ข ๋ ์๊ฒฉํ๊ฒ ์งํ
isNaN("0/0") //true
Number.isNaN("0/0") //false
isNaN(undefined) //true
Number.isNaN(undefined) //false
๐ ๋ฌธ์์ด ๋ค๋ฃจ๊ธฐ ๊ธฐ๋ณธ
function solution(s){
if (s.length !== 4 && s.length !== 6){
return false
}
const answer = s.split("").filter(num => {
// ๋ฌธ์๊ฐ ๋ง๋ ๋ฐ์ดํฐ๋ง ๋จ๊ธฐ๊ธฐ
return isNaN(num)
})
// ๋ฐฐ์ด์ด ๋น์ด์๋์ง (์ฆ ๋ฌธ์์ด์ด ํ๋๋ผ๋ ์กด์ฌํ๋์ง)๋ฅผ ํ๋จํด์
// ๋ฐฐ์ด์ด ๋น์ด์์ง ์๋ค๋ฉด false, ๋น์ด์๋ค๋ฉด True๋ฅผ ๋ฆฌํด
return answer.length ===0
}
solution("a234") //false
solution("8ys2") //false
solution("1234") //true
๐ ์ฝ์์ ํฉ
function solution(n){
let answer = 0;
for (let i = 1; i<=n; i++){
if (n%i===0){
answer += i
}
}
return answer
}
//reduce method ์ฌ์ฉ
function solution(n){
const answer = new Array(n).fill(1)
.reduce((acc, cur, i) => {
return n%(cur+i)===0
? acc + (cur + i)
: acc
},0)
console.log(answer)
}
solution(12) // 28
solution(5) // 6
Author And Source
์ด ๋ฌธ์ ์ ๊ดํ์ฌ(๐ Day 7 Algorithm Review), ์ฐ๋ฆฌ๋ ์ด๊ณณ์์ ๋ ๋ง์ ์๋ฃ๋ฅผ ๋ฐ๊ฒฌํ๊ณ ๋งํฌ๋ฅผ ํด๋ฆญํ์ฌ ๋ณด์๋ค
https://velog.io/@j00b33/Day-7-Algorithm-Review
์ ์ ๊ท์: ์์์ ์ ๋ณด๊ฐ ์์์ URL์ ํฌํจ๋์ด ์์ผ๋ฉฐ ์ ์๊ถ์ ์์์ ์์ ์
๋๋ค.
์ฐ์ํ ๊ฐ๋ฐ์ ์ฝํ
์ธ ๋ฐ๊ฒฌ์ ์ ๋
(Collection and Share based on the CC Protocol.)
const handleEdit = (nickname, interests) => {
console.log(interests.split(", ")) // [ '๋ฐฉํ์ถ', 'ํ
๋์ค', '๋ฉ ๋๋ฆฌ๊ธฐ' ]
const handleObj = {
nickname: nickname,
interests: interests.split(', '),
bio: `์ ๋๋ค์์ ${nickname}์
๋๋ค. ์ทจ๋ฏธ๋ ${interests.split(', ')}์
๋๋ค.`
}
return handleObj
}
handleEdit('๋๋น', '๋ฐฉํ์ถ, ํ
๋์ค, ๋ฉ ๋๋ฆฌ๊ธฐ')
// {
// nickname: '๋๋น',
// interests: [ '๋ฐฉํ์ถ', 'ํ
๋์ค', '๋ฉ ๋๋ฆฌ๊ธฐ' ],
// bio: '์ ๋๋ค์์ ๋๋น์
๋๋ค. ์ทจ๋ฏธ๋ ๋ฐฉํ์ถ,ํ
๋์ค,๋ฉ ๋๋ฆฌ๊ธฐ์
๋๋ค.'
// }
const example = " asdf asdf "
example.trim() // Remove both first and last indent
example.trimStart() // Remove first indent
example.trimEnd() // Remove last indent
isNaN vs. Number.isNaN
// isNaN
// 1. ํด๋น ๋ฐ์ดํฐ๊ฐ NaN ๊ฐ์ ๊ฐ์ง๋์ง ํ๋จ
// 2. ์ถ๋ ฅ๊ฐ์ด false์ผ ๋๋ ์ซ์๊ฐ ๋ง๋ค. true์ผ ๋๋ NaN๊ฐ์ ๊ฐ์ง๋ค
isNaN("a") //true
isNaN("10") //false
// Number.isNaN
// 1. ํด๋น ๋ฐ์ดํฐ๊ฐ Number ํ์
์ด๋ฉด์ NaN ๊ฐ์ด ๋ง๋์ง๋ฅผ ๊ฒ์ฆ
// 2. NaN ๊ฒ์ฆ์ ์ข ๋ ์๊ฒฉํ๊ฒ ์งํ
isNaN("0/0") //true
Number.isNaN("0/0") //false
isNaN(undefined) //true
Number.isNaN(undefined) //false
๐ ๋ฌธ์์ด ๋ค๋ฃจ๊ธฐ ๊ธฐ๋ณธ
function solution(s){
if (s.length !== 4 && s.length !== 6){
return false
}
const answer = s.split("").filter(num => {
// ๋ฌธ์๊ฐ ๋ง๋ ๋ฐ์ดํฐ๋ง ๋จ๊ธฐ๊ธฐ
return isNaN(num)
})
// ๋ฐฐ์ด์ด ๋น์ด์๋์ง (์ฆ ๋ฌธ์์ด์ด ํ๋๋ผ๋ ์กด์ฌํ๋์ง)๋ฅผ ํ๋จํด์
// ๋ฐฐ์ด์ด ๋น์ด์์ง ์๋ค๋ฉด false, ๋น์ด์๋ค๋ฉด True๋ฅผ ๋ฆฌํด
return answer.length ===0
}
solution("a234") //false
solution("8ys2") //false
solution("1234") //true
๐ ์ฝ์์ ํฉ
function solution(n){
let answer = 0;
for (let i = 1; i<=n; i++){
if (n%i===0){
answer += i
}
}
return answer
}
//reduce method ์ฌ์ฉ
function solution(n){
const answer = new Array(n).fill(1)
.reduce((acc, cur, i) => {
return n%(cur+i)===0
? acc + (cur + i)
: acc
},0)
console.log(answer)
}
solution(12) // 28
solution(5) // 6
Author And Source
์ด ๋ฌธ์ ์ ๊ดํ์ฌ(๐ Day 7 Algorithm Review), ์ฐ๋ฆฌ๋ ์ด๊ณณ์์ ๋ ๋ง์ ์๋ฃ๋ฅผ ๋ฐ๊ฒฌํ๊ณ ๋งํฌ๋ฅผ ํด๋ฆญํ์ฌ ๋ณด์๋ค https://velog.io/@j00b33/Day-7-Algorithm-Review์ ์ ๊ท์: ์์์ ์ ๋ณด๊ฐ ์์์ URL์ ํฌํจ๋์ด ์์ผ๋ฉฐ ์ ์๊ถ์ ์์์ ์์ ์ ๋๋ค.
์ฐ์ํ ๊ฐ๋ฐ์ ์ฝํ ์ธ ๋ฐ๊ฒฌ์ ์ ๋ (Collection and Share based on the CC Protocol.)
์ข์ ์นํ์ด์ง ์ฆ๊ฒจ์ฐพ๊ธฐ
๊ฐ๋ฐ์ ์ฐ์ ์ฌ์ดํธ ์์ง
๊ฐ๋ฐ์๊ฐ ์์์ผ ํ ํ์ ์ฌ์ดํธ 100์ ์ถ์ฒ ์ฐ๋ฆฌ๋ ๋น์ ์ ์ํด 100๊ฐ์ ์์ฃผ ์ฌ์ฉํ๋ ๊ฐ๋ฐ์ ํ์ต ์ฌ์ดํธ๋ฅผ ์ ๋ฆฌํ์ต๋๋ค