Spis treści[Ukryć][Pokazać]
- 1. Co oznacza dla Ciebie JavaScript?
- 2. Wymień dwa podstawowe paradygmaty programowania w JavaScript.
- 3. Co odróżnia JavaScript od Javy?
- 4. Jakie formy danych obsługuje JavaScript?
- 5. Jakie cechy posiada JavaScript?
- 6. Jakie są wady korzystania z JavaScript?
- 7. W jaki sposób JavaScript pozwala na zbudowanie obiektu?
- 8. Jak w JavaScript konstruować tablicę?
- 9. Jak zdefiniować funkcję name w JavaScript i co to jest?
- 10. W JavaScript opisz podnoszenie.
- 11. Z czym wiążą się zakresy JavaScript zmiennej?
- 12. Co jest szybsze, skrypt ASP czy JavaScript?
- 13. Opisz czym dziedziczenie prototypowe różni się od dziedziczenia klasycznego.
- 14. Napisz program, który będzie dynamicznie dodawał nowe komponenty.
- 15. Callback: Co to jest?
- 16. Jak można debugować program JavaScript?
- 17. Zamknięcie: co to jest? Podaj ilustrację.
- 18. Jakie są metody umieszczania kodu JavaScript w pliku HTML?
- 19. Jak działają liczniki czasu w JavaScript?
- 20. Jakie są Twoje zdanie na temat plików cookie?
- 21. Jak zrobić ciasteczka?
- 22. Jakie są konwencje nazewnictwa zmiennych JavaScript?
- 23. Co sprawia, że let i var różnią się od siebie?
- 24. Dlaczego istnieją funkcje samowywołujące?
- 25. Co odróżnia własność od atrybutów?
- 26. Co robią w JavaScript funkcje strzałek?
- 27. Jaki jest wpisywany język?
- 28. W JavaScript proszę opisać NEGATYWNĄ NIESKOŃCZONOŚĆ.
- 29. Co odróżnia undefined od null?
- 30. Napisz kod JavaScript, aby pokazać, jak uzyskać wewnętrzny kod HTML elementu.
- 31. Jakie są niektóre frameworki JavaScript?
- 32. W JavaScript, co to jest bąbelkowanie zdarzenia?
- 33. Co oznacza zapamiętywanie JavaScript?
- 34. Co oznacza import i eksport?
- 35. Co to jest tryb „Strict” JavaScript i jak jest aktywowany?
- 36. Co realizuje instancja operatora?
- 37. Co w JavaScript oznacza okienko zachęty?
- 38. Co w JavaScript robi generator?
- 39. BOM: Co to jest?
- 40. Skrypty odroczone: Jaką funkcję pełnią w JavaScript?
- Wnioski
Wolnym i otwartym językiem programowania jest JavaScript. Jest przeznaczony do tworzenia aplikacji internetowych. Jest lekki i zrozumiały, co czyni go znacznie szybszym niż inne języki.
Łatwiej jest zastosować JavaScript w Aplikacje internetowe ze względu na integrację z HTML. Aby określić, jak ważne jest to, wyłącz JavaScript w przeglądarce i spróbuj załadować stronę.
Te strony internetowe nie będą działać poprawnie. Ich zawartość często źle się zachowuje. Prawie wszystkie nowoczesne przeglądarki mieszają HTML, CSS i JavaScript.
JavaScript jest jednym z interpretowanych języki programowania. Interpreter jest już zawarty w wielu przeglądarkach, w tym Google Chrome, Microsoft Internet Explorer i innych.
Dzięki temu jego kod może być przetwarzany przez silnik JavaScript przeglądarki. Oto pytania i odpowiedzi na rozmowę kwalifikacyjną JS na poziomie początkującym i eksperckim w celach informacyjnych, jeśli jesteś przygotowany na rozmowę kwalifikacyjną.
Celem tego samego jest zapoznanie Cię z rodzajami pytań, które możesz napotkać podczas rozmowy technicznej. Zaczynajmy.
1. Co oznacza dla Ciebie JavaScript?
Najczęściej używanym językiem skryptów internetowych, używanym zarówno do programowania po stronie klienta, jak i po stronie serwera, jest JavaScript. Kod JavaScript można umieścić na stronach HTML, które przeglądarki internetowe mogą zrozumieć i wykonać, obsługując możliwości programowanie obiektowe.
2. Wymień dwa podstawowe paradygmaty programowania w JavaScript.
Programowanie w JavaScript, wieloparadygmatycznym języku, pozwala na:
- programowanie proceduralne/imperatywne
- Programowanie obiektowe (OOP)
- Korzystanie z programowania funkcjonalnego
- Podejście programistyczne oparte na prototypach lub dziedziczenie oparte na prototypach (rozszerzenie OOP)
3. Co odróżnia JavaScript od Javy?
Podczas gdy JavaScript jest przede wszystkim językiem skryptowym, Java jest językiem programowania. Java to język programowania używany przez programistów do tworzenia programów, które mogą działać w systemie operacyjnym komputera, maszynie wirtualnej lub przeglądarce internetowej. Natomiast kod JS jest przeznaczony do uruchamiania tylko w przeglądarce.
Ale wykorzystując Electron i Node.js, niezależne aplikacje desktopowe można tworzyć w JavaScript. Kod Java i JS różnią się znacznie tym, że ten drugi jest dostępny w formacie tekstowym, podczas gdy ten pierwszy wymaga kompilacji.
4. Jakie formy danych obsługuje JavaScript?
Typy danych obsługiwane przez JavaScript obejmują:
- sznur
- symbol
- Numer
- przedmiot
- Undefined
- Null
- Boolean
5. Jakie cechy posiada JavaScript?
Jest to darmowy i uniwersalny język skryptowy.
Jest to interpretowany język programowania, który jest lekki.
Jest przeznaczony do tworzenia aplikacji sieciowych.
Oba są połączone i komplementarne do Javy.
6. Jakie są wady korzystania z JavaScript?
Doświadczeni programiści, oprócz wychwalania zalet, będą mogli omówić wady preferowanego języka. Bezpieczeństwo to najgorsza wada JavaScriptu. Poszukaj informacji o tym, jak można go nadużywać.
Kolejną wadą JavaScriptu jest jego szerokie zastosowanie i możliwość adaptacji, co może być mieczem obosiecznym, ponieważ pozostawia wiele swobody w programowaniu osobliwości, które mogą skutkować nierówną wydajnością na różnych systemach.
7. W jaki sposób JavaScript pozwala na zbudowanie obiektu?
Idea obiektów jest dobrze wspierana przez JavaScript. Używając literału obiektowego, możesz zbudować obiekt, jak pokazano poniżej:
8. Jak w JavaScript konstruować tablicę?
Literał tablicowy może być użyty do zdefiniowania tablic w następujący sposób:
9. Jak zdefiniować funkcję name w JavaScript i co to jest?
Kiedy nazwana funkcja jest zdefiniowana, natychmiast definiuje nazwę. Można to opisać w następujący sposób za pomocą słowa kluczowego function:
10. W JavaScript opisz podnoszenie.
Wszystkie deklaracje zmiennych i funkcji są domyślnie przesuwane na górę w JavaScript, co jest znane jako podnoszenie. Oznacza to, że wszystkie zmienne i funkcje, niezależnie od tego, gdzie są zdefiniowane, są przenoszone na szczyt zakresu. Zasięg może być lokalny lub międzynarodowy.
11. Z czym wiążą się zakresy JavaScript zmiennej?
Sekcja programu, w której zdefiniowana jest zmienna, to jej zakres. Istnieją tylko dwa zakresy, które może mieć zmienna JavaScript.
- Zmienne globalne: wszędzie w kodzie JavaScript można zobaczyć zmienną globalną, ponieważ ma ona zasięg globalny.
- Zmienne lokalne: Tylko w funkcji, w której jest zadeklarowana, zmienna lokalna będzie widoczna. Lokalnie dla tej funkcji, argumenty funkcji są zawsze obecne.
12. Co jest szybsze, skrypt ASP czy JavaScript?
Szybszy jest JavaScript. JavaScript może być wykonywany bez pomocy serwera WWW, ponieważ jest to język po stronie klienta. Ponieważ jednak ASP jest językiem po stronie serwera, zawsze będzie wolniejszy niż JavaScript. Obecnie JavaScript jest również językiem po stronie serwera (nodejs).
13. Opisz czym dziedziczenie prototypowe różni się od dziedziczenia klasycznego.
JavaScript posiada cudowną zdolność do zniesienia ścisłych ograniczeń tradycyjnego dziedziczenia i umożliwienia obiektom dziedziczenia atrybutów z innych obiektów. –
- Dziedziczenie klasyczne: Za pomocą słowa kluczowego „new” funkcja konstruktora tworzy instancję. Atrybuty klasy nadrzędnej są przekazywane do tej nowej instancji.
- Dziedziczenie prototypów: istniejący obiekt, który działa jako prototyp, jest kopiowany w celu wygenerowania instancji. Selektywne dziedziczenie z szerokiej gamy obiektów może być korzystne w tym przypadku, który jest często tworzony za pomocą funkcji fabrycznej lub „Object.create()”.
14. Napisz program, który będzie dynamicznie dodawał nowe komponenty.
15. Callback: Co to jest?
Prosta funkcja JavaScript wysłana jako argument lub opcja do metody nazywana jest wywołaniem zwrotnym. Termin „oddzwanianie” odnosi się do funkcji, która ma być wykonana po wykonaniu innej funkcji. Funkcje to obiekty w JavaScript. Obiekty JavaScript są funkcjami. Funkcje mogą zatem zwracać inne funkcje i otrzymywać inne funkcje jako dane wejściowe.
16. Jak można debugować program JavaScript?
Po naciśnięciu odpowiedniego klawisza, zwykle klawisza F12, wszystkie współczesne przeglądarki internetowe, w tym Chrome, Firefox i inne, mają wbudowany debuger, z którego można korzystać w dowolnym momencie.
Użytkownicy mogą korzystać z różnych funkcji oferowanych przez narzędzia do debugowania. Edytor kodu, którego używamy do tworzenia aplikacji JavaScript, pozwala nam również rozwiązywać problemy z kodem JavaScript.
17. Zamknięcie: co to jest? Podaj ilustrację.
Gdy zmienna określona poza bieżącym zakresem jest dostępna z zakresu, który się w niej znajduje, tworzone są zamknięcia. Umożliwia dostęp do zakresu funkcji zewnętrznej z funkcji wewnętrznej.
Za każdym razem, gdy funkcja jest generowana w JavaScript, tworzone jest również zamknięcie. Po prostu napisz funkcję w innej funkcji, wyeksponuj ją, a następnie wykorzystaj do zaimplementowania zamknięcia.
18. Jakie są metody umieszczania kodu JavaScript w pliku HTML?
Kod JavaScript można wstawić przede wszystkim na dwa sposoby:
- Gdy na stronie internetowej wymagane jest tylko kilka wierszy skryptu, możemy napisać kod JavaScript w elemencie skryptu w tym samym pliku HTML.
- Aby dodać wszystkie funkcje skryptowe do strony internetowej bez zapychania kodu, możemy zaimportować plik źródłowy JavaScript do dokumentu HTML.
19. Jak działają liczniki czasu w JavaScript?
Timery służą do uruchamiania lub powtarzania fragmentu kodu w określonym czasie. Do tego celu służą metody setTimeout, setInterval i clearInterval.
Za pomocą funkcji setTimeout(funkcja, opóźnienie) ustawiany jest zegar, który uruchamia określoną funkcję po ustawieniu określonego opóźnienia. Funkcja setInterval(function, delay) wielokrotnie uruchamia określoną funkcję z określonym opóźnieniem i zatrzymuje się tylko po anulowaniu.
Czasomierz otrzymuje polecenie zakończenia przy użyciu metody clearInterval(id). Ponieważ czasomierze są uruchamiane w jednym wątku, zdarzenia mogą stać w kolejce i czekać na wykonanie.
20. Jakie są Twoje zdanie na temat plików cookie?
Plik cookie to często niewielka część danych, którą witryna internetowa wysyła do komputera użytkownika i która jest tam zapisywana przez przeglądarkę internetową, z której korzystano na stronie.
Pliki cookie służą do przechwytywania czynności związanych z przeglądaniem witryny i zapamiętywania informacji do późniejszego wykorzystania.
21. Jak zrobić ciasteczka?
Poniżej przedstawiono najprostszą metodę generowania plików cookie w języku JavaScript:
22. Jakie są konwencje nazewnictwa zmiennych JavaScript?
Nazywając zmienne w JavaScript, musisz przestrzegać następujących zasad:
Żadne zastrzeżone słowa kluczowe JavaScript nie powinny być używane jako nazwy zmiennych. Na przykład nazwy zmiennych kończące się na break lub boolean są nieprawidłowe.
Nazwa zmiennej w JavaScript nie powinna zaczynać się od cyfry (0-9). Muszą zaczynać się od litery lub symbolu podkreślenia.
Na przykład 123nazwa nie jest dopuszczalną nazwą zmiennej, chociaż _123nazwa lub nazwa123 jest. Wielkość liter ma znaczenie w nazwach zmiennych JavaScript. Na przykład test i test to dwie różne zmienne.
23. Co sprawia, że let i var różnią się od siebie?
W JavaScript deklaracje zmiennych i metod mogą być dokonywane za pomocą let lub var. Jedyną prawdziwą różnicą między tymi dwoma jest to, że słowo kluczowe let jest objęte zakresem przez blok, podczas gdy słowo kluczowe var jest objęte zakresem funkcji.
24. Dlaczego istnieją funkcje samowywołujące?
Natychmiast wywoływane wyrażenia funkcyjne lub samoczynne funkcje anonimowe to dla nich inne nazwy. Są one znane jako „funkcje samoczynne”, ponieważ są wywoływane przez kod automatycznie.
Piszemy funkcję i wywołujemy ją. Jednak funkcje anonimowe mogą być używane, jeśli chcemy, aby funkcja uruchamiała się automatycznie po wyjaśnieniu i jeśli nie będziemy jej ponownie używać. Dodatkowo niektórym funkcjom brakuje nazwy.
25. Co odróżnia własność od atrybutów?
Atrybuty obiektów JS DOM działają podobnie do zmiennych instancji dla niektórych komponentów. Właściwość może zawierać różne rodzaje danych.
Możesz uzyskać dostęp do właściwości poprzez interakcję z obiektem w Vanilla JS lub używając funkcji prop() jQuery.
Atrybuty znajdują się w kodzie HTML, a nie w DOM. Są porównywalne z właściwościami, ale mają mniejsze możliwości. Jeśli właściwości są dostępne, zaleca się pracę z nimi, a nie z atrybutami.
Atrybut to łańcuchowy typ danych, w przeciwieństwie do właściwości.
26. Co robią w JavaScript funkcje strzałek?
W JavaScript funkcje strzałek są szybką i przejrzystą metodą pisania funkcji. Funkcja strzałki ma następującą ogólną składnię:
27. Jaki jest wpisywany język?
Wartości, a nie zmienne, są ze sobą powiązane w typowanych językach. Istnieją dwie kategorie:
Dynamicznie: w przeciwieństwie do JS, gdzie zmienna może akceptować liczbę lub ciąg znaków, ta zmienna może zawierać wiele rodzajów.
Statycznie: w tym przypadku zmienna może przechowywać tylko jeden typ; na przykład w Javie zmienna łańcuchowa może przechowywać tylko określony zestaw znaków.
28. W JavaScript proszę opisać NEGATYWNĄ NIESKOŃCZONOŚĆ.
Gdy ujemna liczba całkowita jest dzielona przez 0, w JS tworzona jest statyczna właściwość NEGATIVE INFINITY. Oto niektóre z jego kluczowych cech:
Aby uzyskać dostęp do NEGATIVE INFINITY, nie trzeba tworzyć żadnych dodatkowych obiektów.
Wartość właściwości NEGATIVE INFINITY odpowiada ujemnej wartości właściwości infinity dla obiektu globalnego.
29. Co odróżnia undefined od null?
Undefined oznacza zadeklarowaną zmienną, która nie otrzymała jeszcze wartości. Z drugiej strony wartość null jest wartością przypisania. Może być używany do wskazania braku wartości i być przypisany do zmiennej.
Niezdefiniowany jest typem samym w sobie (niezdefiniowanym), podczas gdy null jest obiektem. Undefined i null to także dwa różne rodzaje.
30. Napisz kod JavaScript, aby pokazać, jak uzyskać wewnętrzny kod HTML elementu.
31. Jakie są niektóre frameworki JavaScript?
Struktura aplikacji stworzona w JavaScript jest znana jako framework JavaScript. Pod względem kontrola przepływu, różni się od biblioteki JavaScript. Dostępnych jest kilka frameworków JavaScript, jednak kilka z bardziej popularnych to:
- Angular
- React
- Vue
32. W JavaScript, co to jest bąbelkowanie zdarzenia?
Gdy zdarzenie ma miejsce w jednym elemencie wewnątrz innego elementu i oba elementy zarejestrowały uchwyt dla tego zdarzenia, interfejs API HTML DOM używa propagacji zdarzeń jako metody propagacji zdarzeń.
W przypadku bulgotania zdarzenie jest początkowo wykrywane i przetwarzane przez najbardziej wewnętrzny element, zanim zostanie przekazane do otaczających go komponentów.
Począwszy od tego zdarzenia, wykonanie przenosi się do elementu nadrzędnego. Następnie jego element nadrzędny otrzymuje wykonanie i tak dalej, aż do elementu body.
33. Co oznacza zapamiętywanie JavaScript?
Zapamiętywanie to metoda optymalizacji, która przyspiesza działanie kodu, zapisując wyniki kosztownych wywołań funkcji i ponownie wykorzystując je, gdy te same dane wejściowe zostaną ponownie odebrane.
Funkcja jest określana jako kosztowna, jeśli jej wykonanie wymaga dużo czasu i pamięci, ponieważ wykonuje złożone obliczenia. Pamięć podręczna jest natychmiast wypełniana wynikami kosztownego wywołania funkcji.
Ta sama funkcja pominie niezbędne obliczenia i zwróci wartość z pamięci podręcznej, jeśli zostanie wywołana ponownie z tymi samymi parametrami wejściowymi.
Ponieważ funkcja nie musi ponownie wykonywać żadnych obliczeń ani obliczeń, które już wykonała, ta metoda znacznie oszczędza czas i pamięć używaną przez program.
34. Co oznacza import i eksport?
Potrafimy stworzyć modułowy kod JavaScript za pomocą importu i eksportu. Możemy podzielić nasz kod na kilka plików, korzystając z importów i eksportów. Przykłady zawierają
35. Co to jest tryb „Strict” JavaScript i jak jest aktywowany?
Możesz poprawić sprawdzanie błędów w kodzie, używając trybu ścisłego.
Podczas korzystania z trybu ścisłego nie można dodawać właściwości do obiektów nierozszerzalnych, przypisywać wartości do właściwości tylko do odczytu, używać niejawnie zadeklarowanych zmiennych ani przypisywać wartości do zmiennych tylko do odczytu.
Rozpoczynając plik, program lub funkcję od słowa „use strict”, możesz aktywować tryb ścisły.
36. Co realizuje instancja operatora?
Operator instanceof określa, czy łańcuch prototypów obiektu ma jakiekolwiek wystąpienia właściwości prototype konstruktora. Innymi słowy, operator instanceof określa w czasie wykonywania, czy obiekt jest instancją klasy.
W poniższym przykładzie użyto operatora instanceof do określenia typu zmiennych użytkowników.
37. Co w JavaScript oznacza okienko zachęty?
Pole monitu to pole z polem tekstowym, które umożliwia użytkownikowi wprowadzenie danych wejściowych. Za pomocą funkcji prompt() wyświetlane jest okno dialogowe z prośbą o wprowadzenie danych. Użyj pola monitu, jeśli chcesz, aby użytkownik wprowadził wartość przed wyświetleniem strony.
Użytkownik musi wybrać „OK” lub „Anuluj” w wyskakującym okienku, które pojawi się po wprowadzeniu wartości, aby kontynuować.
38. Co w JavaScript robi generator?
Generatory to funkcje, których można używać w różnym czasie. Kontekst i powiązania zmiennych tych funkcji są zapisywane i utrzymywane podczas ponownych wejść.
Początkowe wywołanie funkcji generatora zwraca określony rodzaj iteratora zwanego generatorem. Następnym krokiem jest wywołanie następnej metody generatora, aby użyć wartości. Dopóki nie natrafi na słowo kluczowe yield, funkcja generatora będzie nadal działać.
39. BOM: Co to jest?
BOM, czyli model obiektowy przeglądarki, umożliwia użytkownikom interakcję z przeglądarkami, w których okno pełni rolę pierwszego obiektu. Oprócz innych funkcji obiekt window ma dokument, historię, ekran, nawigator i lokalizację.
Dostęp do funkcji okna można jednak uzyskać zarówno bezpośrednio, jak i odwołując się do okna.
40. Skrypty odroczone: Jaką funkcję pełnią w JavaScript?
Przeglądarka zaczyna analizować kod HTML po załadowaniu strony. Domyślnie przeglądarka wstrzymuje analizowanie kodu HTML po napotkaniu skryptu i zamiast tego rozpoczyna jego uruchamianie.
Po zakończeniu skryptu przeglądarka wznawia przetwarzanie kodu HTML.
Ładowanie strony zostanie opóźnione przez powolny serwer lub duży skrypt. Skrypty odroczone odkładają uruchomienie skryptu do czasu przetworzenia dokumentu.
To opóźnienie w wykonaniu skryptu skraca czas ładowania strony internetowej.
Wnioski
Mamy nadzieję, że te pytania do rozmowy kwalifikacyjnej JavaScript będą dla Ciebie pomocne, niezależnie od tego, czy jesteś programistą przygotowującym się do spotkania, czy kierownikiem ds. rekrutacji, który próbuje znaleźć odpowiedniego kandydata.
Pamiętaj, że wiedza techniczna i wiedza to tylko niewielka część procesu rekrutacji. Aby mieć pewność, że wylądujesz (lub zlokalizujesz odpowiedniego kandydata) do pracy, przeszłe doświadczenie i umiejętności miękkie są równie ważne.
Pamiętaj, że często istnieje kilka prawidłowych odpowiedzi na pytania otwartego wywiadu JavaScript. Ankieterzy są zainteresowani uzasadnieniem twoich odpowiedzi, a nie tylko odpowiedzią, którą zapamiętałeś.
Przygotuj się na dalsze pytania dotyczące sposobu, w jaki uzyskałeś odpowiedź i zawsze umiej wyjaśnić swój proces myślowy.
Twój koszyk Seria wywiadów z haszdorkiem o pomoc w przygotowaniu rozmowy kwalifikacyjnej.
Arun
Wow, ten artykuł bardzo mi pomógł podczas przygotowań do wywiadu JavaScript