πŸ›  develop/CodingTest

[JS 100제] 문제26 - ν–‰μ„± 문제2

m-ur-phy 2022. 12. 2. 14:42

문제

우리 νƒœμ–‘κ³„λ₯Ό μ΄λ£¨λŠ” 행성은 μˆ˜μ„±, κΈˆμ„±, 지ꡬ, ν™”μ„±, λͺ©μ„±, ν† μ„±, μ²œμ™•μ„±, 해왕성이 μžˆμŠ΅λ‹ˆλ‹€.

이 ν–‰μ„±λ“€μ˜ μ˜μ–΄ 이름은 Mercury, Venus, Earth, Mars, Jupiter, Saturn, Uranus, Neptuneμž…λ‹ˆλ‹€. ν–‰μ„±μ˜ ν•œκΈ€ 이름을 μž…λ ₯ν•˜λ©΄ μ˜μ–΄ 이름을 λ°˜ν™˜ν•˜λŠ” ν”„λ‘œκ·Έλž¨μ„ λ§Œλ“€μ–΄ μ£Όμ„Έμš”.

 

λ‚˜μ˜ 풀이

const planets = {
  μˆ˜μ„±: "Mercury",
  κΈˆμ„±: "Venus",
  지ꡬ: "Earth",
  ν™”μ„±: "Mars",
  λͺ©μ„±: "Jupiter",
  ν† μ„±: "Saturn",
  μ²œμ™•μ„±: "Uranus",
  ν•΄μ™•μ„±: "Neptune"
};

const name = prompt("행성이름 ν•œμ˜ λ³€ν™˜κΈ°");

console.log(planets[name]);
  • λ¬Έμ œλŠ” 객체λ₯Ό μ΄μš©ν•˜μ—¬ ν’€μ–΄λ³΄μ•˜λ‹€. key 값에 ν•œκΈ€ 이름을 μ£Όκ³ , value 값에 μ˜μ–΄ 이름을 μ£Όμ–΄ 각각 μ €μž₯ν•΄λ‘” λ’€ 행성이름을 받을 λ³€μˆ˜λ₯Ό 생성해 μ£Όμ—ˆλ‹€.
  • κ°μ²΄μ—μ„œ valueλ₯Ό λΆˆλŸ¬μ˜€λŠ” 방식을 μ΄μš©ν•˜μ—¬ ν•΄λ‹Ή value 값을 뢈러주면 끝. λŒ€κ΄„ν˜Έλ‘œ λΆˆλŸ¬μ˜€λŠ” 방식을 μ‚¬μš©ν•œ μ΄μœ λŠ” prompt 둜 값을 λ°›κΈ° λ•Œλ¬Έμ— '' μ•ˆμ— λ“€μ–΄μžˆλŠ” string ν˜•νƒœλ‘œ 값을 λ°›κΈ° λ•Œλ¬Έμ΄λ‹€. 
  • μ•„λž˜λ₯Ό 확인해 보면 μ•Œ 수 μžˆλ‹€.
console.log(planets.지ꡬ); // Earth
console.log(planets.'지ꡬ'); // undefined

 

μ •λ‹΅

const planets = {
	'μˆ˜μ„±' : 'Mercury',
	'κΈˆμ„±' : 'Venus',
	'지ꡬ' : 'Earth',
	'ν™”μ„±' : 'Mars',
	'λͺ©μ„±' : 'Jupiter',
	'ν† μ„±' : 'Saturn',
	'μ²œμ™•μ„±' : 'Uranus',
	'ν•΄μ™•μ„±' : 'Neptune',
};

const name = prompt("ν–‰μ„±μ˜ 이름을 μž…λ ₯ν•˜μ„Έμš”.");

console.log(planets[name]);
  • 정닡도 λ™μΌν•œ 것을 확인할 수 μžˆλ‹€.