인프런 커뮤니티 질문&답변

김민석님의 프로필 이미지
김민석

작성한 질문수

프로그래밍 시작하기 : 웹 입문 (Inflearn Original)

실습: 설문조사 만들기 (3-12)

QuestMessage 질문

작성

·

181

0

for에서 반복구문을 할때 QuestMessage 라는 변수를 주는데 꼭 QuestMessage 라는 변수를줘야 되는지 햇갈리고,

list[i].question을 주었을때는 i가 인덱스로 쓰여서 쓰인다 했는데  배열인 []로 감싸지는게 아닌지 궁금합니다.

답변 1

0

안녕하세요,
김민석님.

우선 for문 안의 QuestMessage라는 변수는 다른 이름으로 설정하셔도 됩니다.
말 그대로 변수이기 때문에, 질문자 분께서 편하신 이름으로 설정해주시면 됩니다.

다만 변수를 설정하실 때 주의하실 사항이 있습니다.

1. 자바스크립트 변수명에는 -(하이픈)은 올 수 없습니다.

2. 변수명의 첫 번째 문자는 숫자가 올 수 었습니다.

3. 자바스크립트의 예약어(class, if 등)를 사용할 수 없습니다.

블로그(https://dasima.xyz/javascript-variable-making-rule/) 를 참고하였습니다.

그리고 list에는 위에서 선언한 것과 같이,
list = [{question : "이 중에서 제일 좋아하는 과일을 선택해주세요", options : ["사과","복숭아","포도","바나나","딸기"]},   ... ] 
입니다.

list[0] 에는 {question : "이 중에서 제일 좋아하는 과일을 선택해주세요", options : ["사과","복숭아","포도","바나나","딸기"]}
라는 데이터가 들어있습니다.

마찬가지로 list[1] 에는 list의 두 번째 인덱스에 위치한 값이 나올 것입니다.
(    cf. list[1] =
{question : "~~", options :[ ~,~,~,~]}     )

즉, list는 객체를 속성을 가지고 있는 배열입니다.
또한 해당 코드에서 인덱스로 쓰인 i는 for문 안에 있는 코드를 한번 실행할 때마다, i의 값이 1이 증가합니다.

그래서 list[0], list[1], list[2] ... 를 순차적으로 돌면서 원하는 모든 데이터를 가져올 수 있습니다.

질문에 대한 정확한 답변이 되었는지는 모르겠습니다. 
혹시나 더 궁금한 점이 있다면, 글을 남겨주시기 바랍니다.

감사합니다.

김민석님의 프로필 이미지
김민석

작성한 질문수

질문하기