API 통합으로 간단한 날씨 앱 구축
코딩 기술을 계속 배우고 향상시키면서 실시간 데이터를 얻기 위해 API를 사용하여 기본 날씨 앱을 구축하기로 결정했습니다. 이 프로젝트는 API와 상호 작용하고, 비동기 작업을 처리하고, 사용자 인터페이스를 동적으로 업데이트하는 방법을 이해하는 데 도움이 되었습니다. 이번 블로그에서는 앱을 만드는 데 사용한 코드를 안내해 드리겠습니다.
사업개요
날씨 앱은 특정 위치의 날씨 데이터를 가져와 현재 날씨와 3일 간의 일기예보를 표시합니다. WeatherAPI를 사용하여 데이터를 수집하고 JavaScript가 기능을 처리합니다.
주요 기능
위치 검색: 사용자는 도시 이름을 입력하여 날씨 데이터를 얻을 수 있습니다.
현재 날씨: 현재 기온, 날씨 등을 표시합니다.
예보: 향후 3일 동안의 일기 예보를 표시합니다.
이 앱을 작동시키는 코드의 핵심 부분을 살펴보겠습니다.
- API를 사용하여 날씨 데이터 가져오기
첫 번째 단계는 WeatherAPI에서 날씨 데이터를 가져오는 것입니다. API 호출을 처리하기 위한 함수를 설정하는 방법은 다음과 같습니다.
async function searchWeather(term) { var response = await fetch(`https://api.weatherapi.com/v1/forecast.json?key=7d77b96c972b4d119a3151101212704&q=${term}&days=3`); if (response.ok && response.status !== 400) { let weatherData = await response.json(); displayCurrent(weatherData.location, weatherData.current); displayForecast(weatherData.forecast.forecastday); } }
이 함수는 fetch()를 사용하여 WeatherAPI에 비동기 요청을 보냅니다. 현재 날씨와 3일 일기예보를 검색한 다음 해당 데이터를 displayCurrent() 및 displayForecast() 함수에 전달합니다.
- 사용자 입력 처리
앱은 검색창을 통해 사용자 입력을 수신합니다. 사용자가 위치(예: "런던")를 입력하면 날씨 검색이 시작됩니다.
document.getElementById('search').addEventListener('keyup', function (event) { searchWeather(event.target.value); });
또한 클릭 시 검색을 실행하는 버튼을 추가했습니다.
document.getElementById('searchBtn').addEventListener('click', function() { let searchTerm = document.getElementById('search').value; searchWeather(searchTerm); });
이를 통해 사용자는 검색창에 입력하거나 검색 버튼을 클릭하여 날씨 데이터를 가져올 수 있습니다.
- 현재 날씨 표시
데이터를 가져오면 displayCurrent() 함수가 페이지에 현재 날씨 세부 정보를 표시합니다. 작동 방식은 다음과 같습니다.
함수 displayCurrent(location, currentWeather) { if (현재날씨) { let lastUpdatedDate = new Date(currentWeather.last_updated); 카드HTML = ` <div> <p>이 기능은 현재 온도, 날씨 상태, 풍속, 습도 등의 추가 세부정보를 표시하는 카드를 생성합니다. 생성된 HTML을 DOM에 삽입하여 페이지를 동적으로 업데이트합니다.</p> <hr> <ol> <li>3일 예보 표시</li> </ol> <p>다음으로 앞으로 3일간의 일기예보를 표시합니다. 이는 displayForecast() 함수에 의해 처리됩니다.<br> </p> <pre class="brush:php;toolbar:false">함수 displayForecast(forecastData) { ForecastHTML = ''; for (let i = 1; i <p>이 기능은 예측 데이터를 반복하여 다음 이틀 동안의 카드를 생성하여 최고 및 최저 기온, 기상 조건, 아이콘을 표시합니다.</p> <hr> <p>결론</p> <p>API와 상호작용하고, JSON 데이터를 처리하고, 웹페이지를 동적으로 업데이트하는 방법을 배웠기 때문에 이 날씨 앱을 구축하는 것은 저에게 큰 도움이 되었습니다. 이 프로젝트는 비동기 JavaScript, DOM 조작 및 이벤트 처리에 대한 지식을 확고히 하는 데 도움이 되었습니다.</p> <p>JavaScript와 API를 이제 막 시작했다면 이 날씨 앱은 기술을 연습할 수 있는 간단하면서도 강력한 방법입니다. 오류 처리, 더 자세한 예측 또는 UI의 어두운 모드와 같은 더 많은 기능을 추가하여 이 프로젝트를 확장할 수 있습니다.</p> <hr> <p>코드를 자유롭게 시험해보고 필요에 맞게 수정해 보세요. 질문이나 제안 사항이 있으면 알려주세요!</p>
위 내용은 나의 첫 날씨 앱의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

JavaScript 문자열 교체 방법 및 FAQ에 대한 자세한 설명 이 기사는 JavaScript에서 문자열 문자를 대체하는 두 가지 방법 인 내부 JavaScript 코드와 웹 페이지의 내부 HTML을 탐색합니다. JavaScript 코드 내부의 문자열을 교체하십시오 가장 직접적인 방법은 대체 () 메소드를 사용하는 것입니다. str = str.replace ( "find", "replace"); 이 메소드는 첫 번째 일치 만 대체합니다. 모든 경기를 교체하려면 정규 표현식을 사용하고 전역 플래그 g를 추가하십시오. str = str.replace (/fi

간단한 자바 스크립트 함수는 날짜가 유효한지 확인하는 데 사용됩니다. 기능 isValidDate (s) { var 비트 = s.split ( '/'); var d = 새로운 날짜 (비트 [2]/'비트 [1]/'비트 [0]); return !! (d && (d.getmonth () 1) == 비트 [1] && d.getDate () == 숫자 (비트 [0]); } //시험 var

이 기사에서는 jQuery를 사용하여 DOM 요소의 내부 마진 및 마진 값, 특히 요소의 외부 마진 및 내부 마진의 특정 위치를 얻고 설정하는 방법에 대해 설명합니다. CSS를 사용하여 요소의 내부 및 외부 마진을 설정할 수는 있지만 정확한 값을 얻는 것이 까다로울 수 있습니다. // 설정 $ ( "div.header"). css ( "margin", "10px"); $ ( "Div.Header"). CSS ( "패딩", "10px"); 이 코드는 생각할 수 있습니다

이 기사는 10 개의 탁월한 jQuery 탭과 아코디언을 탐구합니다. 탭과 아코디언의 주요 차이점은 콘텐츠 패널이 표시되고 숨겨진 방식에 있습니다. 이 10 가지 예를 살펴 보겠습니다. 관련 기사 : 10 JQuery Tab 플러그인

웹 사이트의 역학 및 시각적 매력을 높이기 위해 10 개의 탁월한 jQuery 플러그인을 발견하십시오! 이 선별 된 컬렉션은 이미지 애니메이션에서 대화식 갤러리에 이르기까지 다양한 기능을 제공합니다. 이 강력한 도구를 탐색합시다. 관련 게시물 : 1

HTTP-Console은 HTTP 명령을 실행하기위한 명령 줄 인터페이스를 제공하는 노드 모듈입니다. 웹 서버, 웹 서비스에 대해 만들어 졌는지 여부에 관계없이 HTTP 요청과 함께 어떻게 진행되고 있는지 정확하게 보는 데 유용합니다.

이 튜토리얼은 사용자 정의 Google 검색 API를 블로그 또는 웹 사이트에 통합하는 방법을 보여 주며 표준 WordPress 테마 검색 기능보다보다 세련된 검색 경험을 제공합니다. 놀랍게도 쉽습니다! 검색을 Y로 제한 할 수 있습니다

다음 jQuery 코드 스 니펫은 DIV 내용이 컨테이너 요소 영역을 초과 할 때 스크롤 바를 추가하는 데 사용될 수 있습니다. (데모 없음, FireBug에 직접 복사하십시오) // d = 문서 // w = 창 // $ = jQuery var contentArea = $ (this), wintop = contentArea.scrolltop (), docheight = $ (d) .height (), winheight = $ (w) .height (), divheight = $ ( '#c


핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

WebStorm Mac 버전
유용한 JavaScript 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

안전한 시험 브라우저
안전한 시험 브라우저는 온라인 시험을 안전하게 치르기 위한 보안 브라우저 환경입니다. 이 소프트웨어는 모든 컴퓨터를 안전한 워크스테이션으로 바꿔줍니다. 이는 모든 유틸리티에 대한 액세스를 제어하고 학생들이 승인되지 않은 리소스를 사용하는 것을 방지합니다.

Dreamweaver Mac版
시각적 웹 개발 도구
