FE 데브코스 수업시간에
입력하는 통화량에 따라 자동으로 환율을 계산해주는
환율 계산기를 구현해보았다.
🌟완성작

DOM 조작을 연습할 수 있었던
좋은 두 번째 과제였다.
참고로, 이용했던 환율 api는 open된 api를 이용했다.
api가 제공하는 json data에서,
이번 환율 계산기에서는 'rates' 객체만 이용하여 구현하였다.
🖇️ 환율계산기 github gist 링크
[10팀]신아진 - 환율계산기
[10팀]신아진 - 환율계산기. GitHub Gist: instantly share code, notes, and snippets.
gist.github.com
github gist 링크에서
Javascript 코드에 대한 자세한 설명 및 흐름,
라이브로 실행할 수 있는 codesandbox 링크를 확인할 수 있다.
구현하면서 힘들었던 점?
환율 변환 결과를 화면에 input으로 표시해야하는데, <select>안의 선택된 <option>에서 'data-rate' 속성으로 환율을 가져오는 과정이 힘들었다.
<select>에서 선택된 <option>을 어떻게 판별하고, 그리고 가져온 <option>에서 'data-rate' 속성에 어떻게 접근해야하지? 라는 두 가지 막막함이 들었다.
해결방안
1. 선택된 <option>을 판별하기
$.selectedIndex를 이용해, <select>에서 선택된 option의 인덱스를 얻어낸다.
그 다음, $.options[index]의 대괄호 안에 추출한 인덱스를 활용한다. 이렇게 하면 선택된 option을 얻을 수 있다.
2. 선택된 <option>에서 'data-rate'속성에 접근하기
선택된 옵션에서, $.dataset.rate 로 접근하면 <option>의 'data-rate' 속성에 접근할 수 있다.!
const fromRate =
document.getElementById("currency-one").options[
document.getElementById("currency-one").selectedIndex
].dataset.rate;
const toRate =
document.getElementById("currency-two").options[
document.getElementById("currency-two").selectedIndex
].dataset.rate;
'FE 개발일지' 카테고리의 다른 글
[react-globe.gl] 지구본 시점 위치 기억해두기 by 세션스토리지 (3) | 2024.10.11 |
---|---|
[react-globe.gl][성능 개선] 초기 지구본 위치를 대한민국으로 설정하고, 초기 위치 풀리지 않도록 만들기 (4) | 2024.10.01 |
[react-globe.gl] 지구본을 반응형으로 정가운데 오도록 만들기 (3) | 2024.09.27 |
[Vercel & Express.js] Vercel을 사용해 Express.js 서버 기반 프로젝트 배포하기 (0) | 2024.08.22 |
slider 슬라이더 구현하기 only HTML/CSS/JS (0) | 2024.08.05 |