inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

한 입 크기로 잘라 먹는 리액트(React.js) : 기초부터 실전까지

2.4) Spread 연산자와 Rest 매개변수

조건문 업그레이드 질문.

214

코딩이재미있어!

작성한 질문수 18

0

그런데, 음식이 하나면 다행인데요~

만약에 한식 : "불고기"에서 뭐 비빔밥, 전, 이런것들도 추가를 하고 싶을 때는 어떻게 하죠? :)

javascript nodejs react

답변 1

1

이정환 Winterlood

안녕하세요 이정환입니다.

만약 말씀하신대로 한식에 '비빔밥', '전' 등을 추가하고 싶다면 다음과 같이 해 주셔야 합니다.

 

const meal = {
한식1: "불고기",
한식2: "비빔밥",
한식3: "파전",
양식: "파스타",
중식: "짜장면"
};

const getMeal = (mealType) => {
return meal[mealType] || "굶기";
};

console.log(getMeal("한식1"));
console.log(getMeal("한식2"));
console.log(getMeal("한식3"));

 

객체의 key가 중복될 경우 가장 마지막 key의 프로퍼티만 저장되기 때문에 한식1, 한식2, 한식3 ... 이런 식으로 key를 바꿔가며 저장 해 주셔야 합니다.

 

아니면 이런 방법도 시도해 볼 수 있습니다. 

다음은 '한식' 프로퍼티의 value를 배열로 설정하여 불고기, 파전, 비빔밥 3개의 요소를 저장한 예 입니다.

const meal = {
한식: ["불고기", "파전", "비빔밥"],
양식: "파스타",
중식: "짜장면"
};

const getMeal = (mealType) => {
return meal[mealType] || "굶기";
};

console.log(getMeal("한식"));

 

또는 다음과 같이 객체를 중첩해도 됩니다.

const meal = {
한식: {
고기: "불고기",
: "파전",
: "비빔밥"
},
양식: "파스타",
중식: "짜장면"
};

const getMeal = (mealType) => {
return meal[mealType] || "굶기";
};

console.log(getMeal("한식"));
console.log(getMeal("한식")["고기"]);
console.log(getMeal("한식")[""]);
console.log(getMeal("한식")[""]);



도움이 되길 바랍니다 : )

0

코딩이재미있어!

우와 정환님 너무 상세한 설명 감사드려요 .. 요즘 일이 바빠서 잘 공부 못하고있는데

완독 꼭 하고싶습니다! 곧 다 보고 리뷰 꼭 쓸게요!!

Editor Component의 최적화 불가능 이슈

0

61

2

useCallback ⊂ useMemo

0

51

2

라이브러리 설치 질문

0

59

2

linter 질문

0

64

2

감정일기장 vercel 배포 후 새로 고침 시 404페이지가 뜨는 이유

0

63

2

Sort 메서드 관련 아티클

0

65

2

4.1) React.js를 소개합니다 강의를 듣고 궁금한 점이 생겼습니다.

0

57

2

html, body에 적용하는 css 스타일 질문입니다.

0

62

2

eslint.config.js 설정 질문입니다.

0

106

2

존재하지 않는 일기 url입력 시 alert이 두 번 떠요

0

74

1

교재(3쇄)와 강의 내용 문의

0

77

2

12.13) 하단 여백 스타일링 관련 질문 드립니다.

0

104

2

에러 질문드립니다

0

124

2

VSCode 설정 문의

0

153

2

PPT 코드 관련 질문

0

77

2

useEffect와 lifecycle문의

0

98

2

프론트엔드 학습 수준 문의

0

114

2

리액트 챕터별 코드에서 eslint 설정파일이 없어요

0

119

2

데이터 로딩중 화면만 계속 나와요!!

0

110

2

퍼블리셔일경우 어느정도 수준까지 강의를 들어야할까요

0

144

2

이후의 커리큘럼 문의

0

162

2

실슬환경 설정에서 save후 console.log 부분이 새로고침이 안되는현상입니다.

0

128

2

최적화 관련 질문있습니다 (useMemo 등)

0

146

3

프로바이더 컴포넌트의 위치는 어떤 기준인가요?

1

131

3