TIL

dev-wholΒ·2021λ…„ 4μ›” 20일

✍🏻 μ‚½μ§ˆν•˜κΈ°

객체λ₯Ό μž…λ ₯λ°›μ•„ number νƒ€μž…μ˜ 값을 κ°–λŠ” 속성을 λͺ¨λ‘ μ œκ±°ν•˜μ‹œμ˜€.

1. for...in문
function λ„˜λ²„νƒ€μž…ν‚€κ°’μ œκ±°ν•΄(obj) {
  for(let key in obj){
    if(obj[key] % 2 === 0){
      delete obj[key];
    }
  }
}
2. map이용(응 μ•ˆλΌ~ λŒμ•„κ°€πŸ˜‰)
function λ„˜λ²„νƒ€μž…ν‚€κ°’μ œκ±°ν•΄(obj) {
  let map = Object.keys(obj).map(function (key) { 
    if(!(typeof obj[key] === "number" && obj[key] % 2 === 0)){
      return `{${key}: ${obj[key]}}`;
    } 
  });
  return map
}
3. map이용(크둬 μ½˜μ†”μ€ ν…ŒμŠ€νŠΈ κ°’κ³Ό 같은데...μ™œ ν…ŒμŠ€νŠΈ ν†΅κ³ΌλŠ” μ•ˆλ κΉŒ?πŸ₯²)
function λ„˜λ²„νƒ€μž…ν‚€κ°’μ œκ±°ν•΄(obj) {
  let map = Object.keys(obj).map(function(key){
    return [String(key), obj[key]]
  })
  let newObj = {}
  for(let i = 0; i < map.length; i++){
    if(Array.isArray(map[i])){
      if(typeof map[i][1] === "number" && map[i][1] % 2 === 0){
        continue;
      }else{
        newObj[map[i][0]] = map[i][1]
      }
    }
  }
}

0개의 λŒ“κΈ€