커뮤니티
포인트
쿠폰
내 강의실
국비 신청 내역
증명서
계정
로그아웃
학습 질문
개발 일지
나의 활동
답변 완료
2-11 Fetch 연습하기 (2) 코드 관련 문의
undefined주차
북마크
엄*준
댓글
7
추천
0
조회수
10
조회수
10
답변 완료

* 겪고 있는 문제 상황을 최대한 자세하게 작성해주세요.

* 문제 해결을 위해 어떤 시도를 해보았는지 구체적으로 함께 알려주세요.


서울시 OpenAPI(실시간 미세먼지 상태) fetch 코드 중

수치가 40이 넘는 경우에만 빨간색으로 글씨 색깔을 변경하는 코드(head>script) 부분에서

아래와 같이 코드를 짰는데 에러가 발생했습니다.


function q1() {

fetch("http://spartacodingclub.shop/sparta_api/seoulair").then(res => res.json()).then(data => {

let rows = data['RealtimeCityAir']['row']

$('#names-q1').empty()

rows.forEach((a) => {

let gu_name = a['MSRSTE_NM']

let gu_mise = a['IDEX_MVL']

if (gu_mise > 40) {

let temp_html = `<li class = 'bad'>${gu_name} : ${gu_mise}</li>`

} else {

let temp_html = `<li>${gu_name} : ${gu_mise}</li>`

}

$('#names-q1').append(temp_html)

})

})

}


위 코드에서 temp_html 앞에 let으로 변수를 정의하는 방식으로는 왜 안되고 아래와 같은 식으로만 코드를 짜야 하는지 궁금합니다.


function q1() {

fetch("http://spartacodingclub.shop/sparta_api/seoulair").then(res => res.json()).then(data => {

let rows = data['RealtimeCityAir']['row']

$('#names-q1').empty()

rows.forEach((a) => {

let gu_name = a['MSRSTE_NM']

let gu_mise = a['IDEX_MVL']

let temp_html = ``

if (gu_mise > 40) {

temp_html = `<li class = 'bad'>${gu_name} : ${gu_mise}</li>`

} else {

temp_html = `<li>${gu_name} : ${gu_mise}</li>`

}

$('#names-q1').append(temp_html)

})

})

}


심지어 위 코드에서 let temp_html = `` 이 부분이 없이도 코드가 제대로 작동하는 것으로 확인했는데,

if문 전에 temp_html이라는 변수를 정의하지 않고도 작동하는 원리가 무엇인지도 궁금합니다.









취소
 공유
취소
댓글 0
댓글 알림
나의얼굴