🌌 Day 6 Algorithm Review

JBΒ·2022λ…„ 3μ›” 21일
0

Algorithms

λͺ©λ‘ 보기
7/12

🌚 Replit

array.map()

// Convert string into number
function solution(element, index, array) {
		return Number(element)
}

// Convert the last string into number
function solution(element, index, array) {
	if (index === array.length-1){
      element = Number(element)
    }
 return element
}

const arr = ['1', '2', '3'];
const result = arr.map(solution);
console.log(result); // [1, 2, 3]

String Detection Method

const email = 'preferbaik@gmail.com'; 

console.log(email.startsWith('pre'));   //true
console.log(email.endsWith('com'));     //true
console.log(email.includes('@gmail'));  //true
console.log(email.endsWith('@gmail.com'));  //true

🌝 Class

padStart

let str = ""
str.padStart(5, 'z')	// 'zzzzz'

str.padStart(5, "*") // '*****'

slice

// 1. λ°°μ—΄, λ¬Έμžμ—΄μ„ 자λ₯Ό λ•Œ μ‚¬μš©
// 2. 원본이 μ €μž₯λ˜μ§€ μ•ŠμŒ

str = "abcde"
str.slice(2)

πŸƒ Ternary Operator

// μ‚Όν•­ μ—°μ‚°μž μ‚¬μš©
function solution(num){
    return num % 2 === 0? "Even" : "Odd"
}

πŸƒ Masking phone number

function solution(phone_number){
    let answer = ''
    
    for (let i = 0; i<phone_number.length; i++){
        if (i< phone_number.length -4){
            answer += '*'
        }
        else {
            answer += phone_number[i]
        }
    }
    return answer
}

// => refactoring
function solution(phone_number){
    let answer = ''
    
    answer = answer.padStart(phone_number-4, "*")
    answer += phone_number.slice(phone_number.length -4, phone_number.length)
    return answer
}

πŸƒ reduce() method

// ======== 평균값 κ΅¬ν•˜κΈ° ========
function solution(arr){
    //reduce = for loop 
    // 계속 λ°˜λ³΅ν•˜λŠ”κ±΄λ° reduceλŠ” acc(λˆ„μ κ°’)μ΄λΌλŠ”κ±° μžμ²΄κ°€ 이전 값을 계속 λ°›μ•„μ˜€λŠ”κ±°μž„
      const sum = arr.reduce( (acc, cur) => {
          console.log(acc, cur)	// acc = λˆ„μ κ°’ // cur = ν˜„μž¬ κ°’
            return acc + cur
      },0)
      return sum/arr.length
  }

profile
두비두λ°₯λ°₯

0개의 λŒ“κΈ€