๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
๐Ÿ“‚ Base/์•Œ๊ณ ๋ฆฌ์ฆ˜

๋ฌธ์ž์—ด์—์„œ ์ˆซ์ž๋ฅผ ๋ชจ๋‘ ์ฐพ์•„ ๋”ํ•œ ๋’ค์— ํ•ด๋‹น ๊ฐ’์„ ๋ฌธ์ž์—ด์˜ ๊ธธ์ด๋กœ ๋‚˜๋ˆˆ ๊ฐ’์„ ์ •์ˆ˜๋กœ ๋ฐ˜์˜ฌ๋ฆผํ•˜์—ฌ ๋ฆฌํ„ดํ•˜๊ธฐ

by Dev. Ella 2023. 4. 25.

๐Ÿ“œ ๋ฌธ์ œ

๋ฌธ์ž์—ด์„ ์ž…๋ ฅ๋ฐ›์•„ ๋ฌธ์ž์—ด์—์„œ ์ˆซ์ž๋ฅผ ๋ชจ๋‘ ์ฐพ์•„ ๋”ํ•œ ๋’ค์— ํ•ด๋‹น ๊ฐ’์„ (์ˆซ์ž์™€ ๊ณต๋ฐฑ์„ ์ œ์™ธํ•œ ๋‚˜๋จธ์ง€) ๋ฌธ์ž์—ด์˜ ๊ธธ์ด๋กœ ๋‚˜๋ˆˆ ๊ฐ’์„ ์ •์ˆ˜๋กœ ๋ฐ˜์˜ฌ๋ฆผํ•˜์—ฌ ๋ฆฌํ„ดํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

 

โš ๏ธ ์ฃผ์˜์‚ฌํ•ญ

- ๋นˆ ๋ฌธ์ž์—ด์„ ์ž…๋ ฅ๋ฐ›์€ ๊ฒฝ์šฐ, 0์„ ๋ฆฌํ„ดํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.
- ์ˆซ์ž(digit)๋Š” ์—ฐ์†ํ•ด์„œ ๋“ฑ์žฅํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

 

โœ๐Ÿป ๋‚ด ํ’€์ด

function numberSearch(str) {

  // ์ž…์ถœ๋ ฅ ์˜ˆ์‹œ
  // 'Hello6 9World 2,'
  // ์ˆซ์ž: 6+9+2 = 17, ๋ฌธ์ž์—ด ๊ธธ์ด: 10 (์ˆซ์ž ๊ณต๋ฐฑ ์ œ์™ธ)
  // 17 / 10 = 1.7 -> ๋ฐ˜์˜ฌ๋ฆผํ•ด์„œ 2

  // ์˜ˆ์‹œ ์ˆซ์ž๋ฅผ ์„ ์–ธ
  const digits = '0123456789';

  // ๋งŒ์•ฝ str์ด ๋นˆ ๋ฌธ์ž์—ด์ด๋ผ๋ฉด
  if (str === '') {
    // 0์„ ๋ฆฌํ„ด
    return 0;
  }

  // ํ•ฉ ์ดˆ๊ธฐ๊ฐ’ ์„ ์–ธ
  let sum = 0;
  // ๋ฌธ์ž์—ด ์ดˆ๊ธฐ๊ฐ’ ์„ ์–ธ
  let pureStr = '';

  // for๋ฌธ์—์„œ ๋ฌธ์ž์—ด์— ์ˆซ์ž, ๊ณต๋ฐฑ ์žˆ๋Š”์ง€ ํ™•์ธ
  for (let i = 0; i < str.length; i += 1) {
    // ํ•ด๋‹น ๋ฌธ์ž์—ด ๊ฐ ์ธ๋ฑ์Šค์— ์ˆซ์ž๊ฐ€ ํฌํ•จ๋œ ๊ฒฝ์šฐ
    if (digits.includes(str[i])) {
      // ๊ฐ ์ˆซ์ž๋“ค์„ ๋ชจ๋‘ ๋”ํ•˜๊ธฐ
      sum = sum + Number(str[i]);
    // ํ•ด๋‹น ๋ฌธ์ž์—ด ๊ฐ ์ธ๋ฑ์Šค๊ฐ€ ์ˆซ์ž๋„ ๊ณต๋ฐฑ๋„ ์•„๋‹ˆ๋ผ๋ฉด
    } else if (str[i] !== ' ') {
      // ๋ฌธ์ž์—ด์„ ๊ทธ๋ƒฅ ๋ฆฌํ„ด
      pureStr = pureStr + str[i];
    }
  }

  // ๊ฒฐ๊ณผ๋ฅผ ๋ฐ˜์˜ฌ๋ฆผํ•˜๊ธฐ
  return Math.round(sum / pureStr.length);
}

 

๐Ÿ’ก ์•Œ์•„๋‘๋ฉด ์ข‹์„ ๊ฐœ๋…

includes() ๋ฉ”์„œ๋“œ๋Š” ๋ฐฐ์—ด์ด ํŠน์ • ์š”์†Œ๋ฅผ ํฌํ•จํ•˜๊ณ  ์žˆ๋Š”์ง€ ํŒ๋ณ„ํ•˜๋ฉฐ, Boolean ๊ฐ’์„ ๋ฐ˜ํ™˜ํ•œ๋‹ค.

const animal = ['cat', 'dog', 'chicken'];

console.log(animal.includes('cat')); // true
console.log(animal.includes('Ella')); // false

 

 

๐Ÿ‘ฉ๐Ÿป‍๐Ÿ’ป ๋ฐฐ์šด ์ 

 

๋Œ“๊ธ€