Naucz się budować prostą aplikację słownika za pomocą JavaScript

Naucz się budować prostą aplikację słownika za pomocą JavaScript

JavaScript jest jednym z najpopularniejszych języków programowania wśród twórców stron internetowych. Ucząc się JavaScript, każdy zaczyna od podstaw i budowania prostych aplikacji za pomocą manipulacji DOM.

W tym artykule dowiesz się, jak zbudować słownik za pomocą JavaScript i manipulacji DOM. W tym artykule oczekujemy, że przed przeczytaniem poznasz podstawy JavaScript.

Spojrzenie na API

API to skrót od Application Programming Interface . Interfejsy API upraszczają tworzenie oprogramowania i innowacje, umożliwiając aplikacjom łatwą i bezpieczną wymianę danych i funkcji.

Ten projekt używa interfejsu API Dictionaryapi.dev . Jest to bezpłatny interfejs API, który zawiera wiele definicji, fonetyki i innych terminów gramatycznych związanych z wyszukiwanymi słowami.

Link do API jest następujący:

https://api.dictionaryapi.dev/api/v2/entries/en/word

Układ frontendu projektu

Układ frontendu tego projektu jest zbudowany przy użyciu HTML i TailwindCSS . Możesz zaimportować TailwindCSS do pliku HTML, korzystając z podanej poniżej sieci CDN.

Strona HTML zawiera wejście i przycisk, w którym użytkownik może wpisać szukane słowo. Istnieją jeszcze trzy elementy div, które wyświetlają część mowy, wiele definicji i dźwięk, który pomaga poprawnie wymówić słowo. Domyślnie te trzy elementy div nie mają właściwości wyświetlania none. Gdy dane są pobierane z interfejsu API, właściwość wyświetlania tych elementów div zostanie ustawiona na blok.


Dictionary


<>
type="text"
placeholder="Enter the word"
id="word"
class="
py-2
w-1/4
focus:outline-none
border-2 border-green-600
rounded
px-3
"
/>
<>
id="search"
class="bg-green-600 text-white text-xl px-4 py-2 rounded">
Search

 


 

 

 



 

Ten frontend będzie wyglądał tak

Naucz się budować prostą aplikację słownika za pomocą JavaScript

Dodawanie funkcjonalności za pomocą JavaScript

Przed pobraniem danych przez API i ich wyświetleniem należy uzyskać dostęp do elementów HTML za pomocą ich identyfikatorów. Dostęp do identyfikatorów można uzyskać za pomocą metody JavaScript getElementById() .

const word = document.getElementById("word"); const search = document.getElementById("search"); const display = document.getElementById("display"); const partOfSpeechDiv = document.getElementById("partOfSpeechDiv"); const partOfSpeechHeader = document.getElementById("partOfSpeechHeader"); const partOfSpeechPara = document.getElementById("partOfSpeechPara"); const meaningDiv = document.getElementById("meaningDiv"); const audioDiv = document.getElementById("audio"); const meaningHeader = document.getElementById("meaningHeader");

Dodawanie detektora zdarzeń

Element input na stronie HTML ma identyfikator o nazwie word . Po uzyskaniu dostępu do elementu input możesz pobrać wartość tekstu w elemencie input za pomocą atrybutu .value .

Przycisk wyszukiwania ma identyfikator o nazwie search . Musisz dodać detektor zdarzenia kliknięcia , aby wyzwolić zdarzenie i wywołać funkcję, aby pobrać dane za pośrednictwem interfejsu API.

Asynchronizuj i czekaj

Od 2017 r. JavaScript wprowadził koncepcję asynchronii i oczekiwania na wykonanie żądań asynchronicznych. Używasz async- await zamiast .then i .catch do rozwiązywania i odrzucania obietnic.

Powiązane: Programowanie synchroniczne i asynchroniczne: czym się różnią?

search.addEventListener("click", async () => { try { let url = `https://api.dictionaryapi.dev/api/v2/entries/en/${word.value.toLowerCase()}`; const res = await fetch(url); const data = await res.json(); displayData(data); } catch (error) { console.log(error); } });

Aby pracować z obietnicami przy użyciu async-await , musisz dodać słowo kluczowe async przed definicją funkcji. A za każdym razem, gdy wysyłasz żądanie lub wywołujesz funkcję, musisz dodać przed nią słowo kluczowe await .

Oczekujcie kluczowe wstrzymuje dalszą realizację funkcji aż poprzedni wniosek nie zostanie zakończone.

Musisz wykonać całą akcję asynchronicznego oczekiwania na obietnicę w bloku try-catch . Jeśli obietnica nie jest w stanie pobrać danych, wyświetli błąd w bloku catch . Przed przekazaniem słowa do interfejsu API powinno ono być zapisane małymi literami, aby uzyskać dokładne wyniki. Do konwersji słowa można użyć metody ciągu .lowercase() .

Metoda pobierania powinna pobierać dane z API. Musisz dodać słowo kluczowe await, aby funkcja zatrzymała się w tym momencie, podczas gdy metoda fetch pobiera dane.

Po pobraniu danych należy je przekonwertować do formatu JSON przy użyciu metody .json() w odpowiedzi.

Wyświetlanie danych na stronie internetowej

Po pobraniu danych i skonwertowaniu ich do formatu JSON , musisz wyświetlić je na stronie internetowej. Musisz wywołać metodę displayData() i przekazać do niej dane.

Struktura odpowiedzi API jest następująca:

Naucz się budować prostą aplikację słownika za pomocą JavaScript

Interfejs API zwraca część mowy, wiele definicji i fonetykę słów w odpowiedzi.

Możesz uzyskać wszystkie definicje danego słowa za pomocą:

const meanings = data[0].meanings[0].definitions;

Zmienna znaczenia to tablica, która zawiera wszystkie definicje danego słowa.

Aby uzyskać część mowy danego słowa:

const partOfSpeech = data[0].meanings[0].partOfSpeech;

Możesz dodać część mowy słowa za pomocą atrybutu .innerHTML . W kodzie HTML część div mowy miała domyślnie właściwość display none , ale w kodzie JavaScript po pobraniu danych należy ustawić właściwość display na block .

Wyświetlanie definicji

Musisz utworzyć zmienną o nazwie senseList . Po dołączeniu wszystkich definicji do tej zmiennej, musisz przypisać jej atrybut .innerHTML, aby wyświetlić ją na stronie internetowej.

Powiązane: Ściągawka z podstawami HTML: tagi, atrybuty i więcej

Przechodź przez tablicę znaczeń i śledź pojedynczą definicję oraz indeks, w którym jest ona obecna. Dołącz pojedynczą definicję i indeks do zmiennej oznaczającej List wewnątrz elementu akapitu HTML.

Gdy jesteś z pętli, trzeba przekazać je do .innerHTML atrybut meaningDiv .

Wyświetl element audio na stronie internetowej

Odpowiedź otrzymana przez API zawiera fonetykę, która pomaga użytkownikom zrozumieć wymowę słowa. Aby dodać ten dźwięk na stronie internetowej, musisz utworzyć element audio i przekazać fonetykę w atrybucie src tego elementu. Na koniec musisz umieścić element audio w audioDiv za pomocą atrybutu .innerHTML .

Naucz się budować prostą aplikację słownika za pomocą JavaScript

const displayData = (data) => { console.log(data); const partOfSpeech = data[0].meanings[0].partOfSpeech; const meanings = data[0].meanings[0].definitions; partOfSpeechDiv.className = "bg-gray-100 px-2 py-3 flex flex-col w-1/4 justify-center items-center border-2 border-green-500 rounded block"; partOfSpeechHeader.innerHTML = "Part of Speech"; partOfSpeechPara.innerHTML = partOfSpeech; let meaningList = ``; meanings.forEach((meaning, ind) => { meaningList += `

${ind + 1}) ${
meaning.definition
}

`;
});
znaczenieDiv.className =
"text-center w-1/4 bg-gray-100 my-6 border-2 border-green-500 zaokrąglony blok";
znaczenieHeader.innerText = "Znaczenia";
znaczenieDiv.innerHTML = listaznaczeń;
niech aud = `

`;
audioDiv.className = "blok";
audioDiv.innerHTML = aud;
};

Naucz się budować prostą aplikację słownika za pomocą JavaScript

 

Dodaj kolejny projekt do swojej listy

Teraz, gdy nauczyłeś się budować aplikację słownikową za pomocą JavaScript, nadszedł czas, abyś sam stworzył kilka ekscytujących projektów. Projekty budowlane nie tylko poprawią twoje podstawy, ale także dodadzą projekty do twojego CV.

Szukasz więcej praktyki w zakresie koncepcji manipulacji JavaScript i DOM? Oto kolejny projekt, który możesz zbudować, aby wzmocnić swoje umiejętności.


Jak obliczyć wartość nCr

Jak obliczyć wartość nCr

Kombinacja to pojęcie matematyczne. Odnosi się do ułożenia kilku przedmiotów, gdzie ich kolejność nie ma znaczenia. Podstawowa formuła opisuje liczbę prawidłowych kombinacji.

Jak napisać i skompilować swój pierwszy kod Solidity?

Jak napisać i skompilować swój pierwszy kod Solidity?

Solidity to język programowania używany przez inteligentne kontrakty na blockchainie Ethereum. Jest to statyczny, zorientowany obiektowo język programowania.

SQL kontra NoSQL: jaka jest najlepsza baza danych dla twojego następnego projektu?

SQL kontra NoSQL: jaka jest najlepsza baza danych dla twojego następnego projektu?

SQL kontra NoSQL: jaka jest najlepsza baza danych dla twojego następnego projektu?

Jak znaleźć N-cyfrowe idealne sześciany i kwadraty za pomocą Pythona, C++ i JavaScript

Jak znaleźć N-cyfrowe idealne sześciany i kwadraty za pomocą Pythona, C++ i JavaScript

Wielu programistów uwielbia rozwiązywać trudne problemy matematyczne za pomocą kodu. Pomaga wyostrzyć umysł i poprawić umiejętności rozwiązywania problemów. W tym artykule dowiesz się, jak znaleźć najmniejsze i największe n-cyfrowe idealne kwadraty i sześciany za pomocą Pythona, C++ i JavaScript. Każdy przykład zawiera również przykładowe dane wyjściowe dla kilku różnych wartości.

Jak używać Pythona jako kalkulatora wiersza poleceń

Jak używać Pythona jako kalkulatora wiersza poleceń

Chociaż możesz używać kalkulatora graficznego na swoim komputerze, interpreter języka programowania Python może pełnić funkcję kalkulatora biurkowego. Jest to tak popularny żart na temat biegania w społeczności Pythona, że ​​wspomniano o nim w oficjalnym samouczku. Oto, jak używać Pythona jako kalkulatora.

Jak osadzić tweety w swoich postach WordPress

Jak osadzić tweety w swoich postach WordPress

Umieszczanie usług stron trzecich w swoich postach WordPress to ekscytujący sposób na przyciągnięcie zainteresowania odwiedzających. Osadzone treści zawierają również wskazówki wizualne, które ułatwiają skanowanie. WordPress ułatwił dodawanie tego typu treści.

Rozpocznij pracę z notatnikiem Jupyter: samouczek

Rozpocznij pracę z notatnikiem Jupyter: samouczek

Jeśli jesteś początkującym naukowcem zajmującym się danymi, który pracuje z Pythonem lub R, musisz wiedzieć, jak korzystać z Jupyter Notebook. Jest to środowisko IDE typu open source i serwerowe do manipulowania danymi, udostępniania kodu na żywo, a także zarządzania przepływem pracy w nauce o danych.

Kodowanie nie jest dla wszystkich: 9 stanowisk technicznych, które można uzyskać bez niego

Kodowanie nie jest dla wszystkich: 9 stanowisk technicznych, które można uzyskać bez niego

Tech to bez wątpienia branża przyszłości. Jeśli jesteś jednym z milionów młodych dorosłych, którzy mają rozpocząć pierwszy etap swojej kariery, być może zastanawiasz się, co zrobić, jeśli nie lubisz kodować.

7 ważnych poleceń, które pomogą rozpocząć pracę z Pythonem dla początkujących

7 ważnych poleceń, które pomogą rozpocząć pracę z Pythonem dla początkujących

Nauka nowego języka programowania, takiego jak Python, staje się bezproblemowa, jeśli masz kompleksową mapę drogową, szczegółowo opisującą koncepcje, których należy się nauczyć jako początkujący i jak robić dalsze postępy, aby osiągnąć kolejny kamień milowy. Nawet średniozaawansowani programiści powinni często odświeżyć swoje podstawy, aby zbudować dla siebie solidną podstawę.

Twoja pierwsza aplikacja internetowa ASP.NET: jak zacząć

Twoja pierwsza aplikacja internetowa ASP.NET: jak zacząć

ASP.NET to bezpłatna wieloplatformowa platforma firmy Microsoft do tworzenia aplikacji i usług internetowych. Platforma ASP.NET jest rozszerzeniem .NET, platformy programistycznej narzędzi, języków programowania i bibliotek używanych do tworzenia różnych aplikacji.

9 najlepszych alternatyw dla platformy Docker do zarządzania kontenerami

9 najlepszych alternatyw dla platformy Docker do zarządzania kontenerami

Kontenery są bardzo przydatne przy opracowywaniu, wdrażaniu i zarządzaniu oprogramowaniem w środowisku wirtualnym. Docker jest przydatny w procesie konteneryzacji, ale nie jest jedyną platformą. Jeśli szukasz alternatyw dla Dockera, nie szukaj dalej. Ta lista przedstawia niektóre bogate w funkcje i wydajne alternatywy platformy Docker, które można wykorzystać w następnym projekcie.

Czy ARCore lub ARKit są lepsze do tworzenia doświadczeń w rozszerzonej rzeczywistości?

Czy ARCore lub ARKit są lepsze do tworzenia doświadczeń w rozszerzonej rzeczywistości?

Niektóre z najczęściej omawianych aplikacji mobilnych i doświadczeń w dzisiejszych czasach wykorzystują technologię rozszerzonej rzeczywistości. Podczas gdy niektóre z tych doświadczeń mogą działać na praktycznie każdym urządzeniu mobilnym, inne działają tylko na nowszych i droższych modelach. Tworzenie i używanie tych bardziej zaawansowanych środowisk wymaga ARCore i ARKit.

Jak stworzyć nową gałąź w Git

Jak stworzyć nową gałąź w Git

Gałęzie są kluczowe dla koncepcji kontroli wersji w programowaniu, aw szczególności w Git. W tym artykule startowym dowiesz się, czym jest gałąź i jak ją utworzyć przy użyciu wielu różnych narzędzi.

Jak używać instrukcji if w Pythonie?

Jak używać instrukcji if w Pythonie?

Instrukcja if jest siłą napędową programowania logicznego. W rezultacie lepsze zrozumienie Pythona jest znaczącym dodatkiem do twoich umiejętności programowania w Pythonie.

5 najlepszych odznak, które wzmocnią Twoje repozytorium GitHub

5 najlepszych odznak, które wzmocnią Twoje repozytorium GitHub

Odznaki GitHub mogą zwiększyć czytelność repozytorium, zapewniając użytkownikom szybki sposób przechwytywania metryk repozytorium. Plakietki mogą być osadzone w pliku README.md, aby wyjaśnić innym programistom znaczenie i konieczność Twojego projektu. W rezultacie czytelnicy bardzo szybko dowiadują się o repozytorium, sprawdzając dołączone identyfikatory.

Pierwsze kroki z Redis i PHP do szybkiego przechowywania danych

Pierwsze kroki z Redis i PHP do szybkiego przechowywania danych

Popularny silnik pamięci masowej Redis jest doskonałym i niezbędnym narzędziem w każdym arsenale programistów. Silnik pamięci masowej w pamięci umożliwia niezwykle szybkie przechowywanie i pobieranie danych, do imponujących 32 milionów zapytań na sekundę, co czyni go doskonałym uzupełnieniem każdego głównego silnika bazy danych.

Co to jest WYSIWYG?

Co to jest WYSIWYG?

Część magii tworzenia oprogramowania pojawia się, gdy wiersze kodu łączą się w coś więcej niż sumę ich części. Przekonasz się, że gdy próbujesz budować w ten sposób abstrakcyjnie, potrzebujesz trochę kreatywnej wizualizacji. Może to dotyczyć przetwarzania tekstu lub projektowania stron internetowych, podobnie jak w przypadku programowania.

Jak zainstalować .NET Framework w wersji 3.5 w systemie Windows 10?

Jak zainstalować .NET Framework w wersji 3.5 w systemie Windows 10?

Jako użytkownik systemu Windows prawdopodobnie przynajmniej raz natknąłeś się na słowa .NET Framework. Jest to platforma oprogramowania opracowana przez firmę Microsoft, która umożliwia tworzenie i uruchamianie programów w językach C#, C++, F# i Visual Basic. Najnowsza wersja platformy .NET to 4,8, ale Twój komputer może wymagać starszej wersji platformy .NET (np. .NET 3.5) do uruchamiania niektórych aplikacji.

WordPress kontra Wix: kluczowe różnice

WordPress kontra Wix: kluczowe różnice

Budując stronę internetową dla siebie lub swojej firmy często stajesz przed klasycznym dylematem. WordPress vs. Wix — który wybrać i jaki byłby dla Ciebie najlepszy?

10 najlepszych dystrybucji Linuksa dla programistów

10 najlepszych dystrybucji Linuksa dla programistów

Chociaż Linux może nie być ulubionym systemem operacyjnym dla zwykłych użytkowników, jest to wybór dla większości programistów i programistów. Linux jest bardziej praktycznym systemem operacyjnym, który został specjalnie zaprojektowany z myślą o programowaniu i programistach.

Jak obliczyć wartość nCr

Jak obliczyć wartość nCr

Kombinacja to pojęcie matematyczne. Odnosi się do ułożenia kilku przedmiotów, gdzie ich kolejność nie ma znaczenia. Podstawowa formuła opisuje liczbę prawidłowych kombinacji.

Jak napisać i skompilować swój pierwszy kod Solidity?

Jak napisać i skompilować swój pierwszy kod Solidity?

Solidity to język programowania używany przez inteligentne kontrakty na blockchainie Ethereum. Jest to statyczny, zorientowany obiektowo język programowania.

SQL kontra NoSQL: jaka jest najlepsza baza danych dla twojego następnego projektu?

SQL kontra NoSQL: jaka jest najlepsza baza danych dla twojego następnego projektu?

SQL kontra NoSQL: jaka jest najlepsza baza danych dla twojego następnego projektu?

Jak znaleźć N-cyfrowe idealne sześciany i kwadraty za pomocą Pythona, C++ i JavaScript

Jak znaleźć N-cyfrowe idealne sześciany i kwadraty za pomocą Pythona, C++ i JavaScript

Wielu programistów uwielbia rozwiązywać trudne problemy matematyczne za pomocą kodu. Pomaga wyostrzyć umysł i poprawić umiejętności rozwiązywania problemów. W tym artykule dowiesz się, jak znaleźć najmniejsze i największe n-cyfrowe idealne kwadraty i sześciany za pomocą Pythona, C++ i JavaScript. Każdy przykład zawiera również przykładowe dane wyjściowe dla kilku różnych wartości.

Jak używać Pythona jako kalkulatora wiersza poleceń

Jak używać Pythona jako kalkulatora wiersza poleceń

Chociaż możesz używać kalkulatora graficznego na swoim komputerze, interpreter języka programowania Python może pełnić funkcję kalkulatora biurkowego. Jest to tak popularny żart na temat biegania w społeczności Pythona, że ​​wspomniano o nim w oficjalnym samouczku. Oto, jak używać Pythona jako kalkulatora.

Jak osadzić tweety w swoich postach WordPress

Jak osadzić tweety w swoich postach WordPress

Umieszczanie usług stron trzecich w swoich postach WordPress to ekscytujący sposób na przyciągnięcie zainteresowania odwiedzających. Osadzone treści zawierają również wskazówki wizualne, które ułatwiają skanowanie. WordPress ułatwił dodawanie tego typu treści.

Rozpocznij pracę z notatnikiem Jupyter: samouczek

Rozpocznij pracę z notatnikiem Jupyter: samouczek

Jeśli jesteś początkującym naukowcem zajmującym się danymi, który pracuje z Pythonem lub R, musisz wiedzieć, jak korzystać z Jupyter Notebook. Jest to środowisko IDE typu open source i serwerowe do manipulowania danymi, udostępniania kodu na żywo, a także zarządzania przepływem pracy w nauce o danych.

Kodowanie nie jest dla wszystkich: 9 stanowisk technicznych, które można uzyskać bez niego

Kodowanie nie jest dla wszystkich: 9 stanowisk technicznych, które można uzyskać bez niego

Tech to bez wątpienia branża przyszłości. Jeśli jesteś jednym z milionów młodych dorosłych, którzy mają rozpocząć pierwszy etap swojej kariery, być może zastanawiasz się, co zrobić, jeśli nie lubisz kodować.

7 ważnych poleceń, które pomogą rozpocząć pracę z Pythonem dla początkujących

7 ważnych poleceń, które pomogą rozpocząć pracę z Pythonem dla początkujących

Nauka nowego języka programowania, takiego jak Python, staje się bezproblemowa, jeśli masz kompleksową mapę drogową, szczegółowo opisującą koncepcje, których należy się nauczyć jako początkujący i jak robić dalsze postępy, aby osiągnąć kolejny kamień milowy. Nawet średniozaawansowani programiści powinni często odświeżyć swoje podstawy, aby zbudować dla siebie solidną podstawę.

Twoja pierwsza aplikacja internetowa ASP.NET: jak zacząć

Twoja pierwsza aplikacja internetowa ASP.NET: jak zacząć

ASP.NET to bezpłatna wieloplatformowa platforma firmy Microsoft do tworzenia aplikacji i usług internetowych. Platforma ASP.NET jest rozszerzeniem .NET, platformy programistycznej narzędzi, języków programowania i bibliotek używanych do tworzenia różnych aplikacji.