Змест[Схаваць][Паказаць]
- 1. Што для вас значыць JavaScript?
- 2. Назавіце дзве асноўныя парадыгмы праграмавання для распрацоўкі JavaScript.
- 3. Што адрознівае JavaScript ад Java?
- 4. Якія формы дадзеных падтрымлівае JavaScript?
- 5. Якімі якасцямі валодае JavaScript?
- 6. Якія недахопы выкарыстання JavaScript?
- 7. Як JavaScript дазваляе ствараць аб'ект?
- 8. Як у JavaScript стварыць масіў?
- 9. Як вызначыць функцыю імя ў JavaScript і што гэта такое?
- 10. У JavaScript апішыце пад'ём.
- 11. Што ўключаюць у сябе вобласці JavaScript зменнай?
- 12. Што хутчэй, скрыпт ASP або JavaScript?
- 13. Апішыце, чым прататыпная спадчыннасць адрозніваецца ад класічнай.
- 14. Напішыце праграму, якая будзе дынамічна дадаваць новыя кампаненты.
- 15. Зваротны званок: што гэта?
- 16. Як можна адладзіць праграму JavaScript?
- 17. Закрыццё: што гэта? Прывядзіце ілюстрацыю.
- 18. Якія метады існуюць для ўключэння кода JavaScript у файл HTML?
- 19. Як функцыянуюць таймеры ў JavaScript?
- 20. Што вы думаеце пра печыва?
- 21. Як прыгатаваць печыва?
- 22. Якія пагадненні аб найменні зменных JavaScript?
- 23. Чым let і var адрозніваюцца адзін ад аднаго?
- 24. Чаму існуюць функцыі самавыкліку?
- 25. Што адрознівае ўласцівасць ад атрыбутаў?
- 26. Што робяць функцыі стрэлак у JavaScript?
- 27. Што такое друкаваная мова?
- 28. Калі ласка, апішыце ў JavaScript NEGATIVE INFINITY.
- 29. Што адрознівае undefined ад null?
- 30. Напішыце код JavaScript, каб паказаць, як атрымаць унутраны HTML элемента.
- 31. Якія фрэймворкі JavaScript?
- 32. Што такое ўсплыванне падзеі ў JavaScript?
- 33. Што азначае запамінанне JavaScript?
- 34. Што азначаюць імпарт і экспарт?
- 35. Што такое «Строгі» рэжым JavaScript і як ён актывуецца?
- 36. Што выконвае аператар instanceof?
- 37. Што азначае поле падказкі ў JavaScript?
- 38. Што робіць генератар у JavaScript?
- 39. BOM: што гэта?
- 40. Адкладзеныя скрыпты: якую функцыю яны выконваюць у JavaScript?
- заключэнне
Бясплатная мова праграмавання з адкрытым зыходным кодам - гэта JavaScript. Ён прызначаны для стварэння вэб-прыкладанняў. Ён лёгкі і даступны для інтэрпрэтацыі, што робіць яго значна хутчэйшым за іншыя мовы.
Лягчэй выкарыстоўваць JavaScript вэб-прыкладання дзякуючы інтэграцыі ў HTML. Каб вызначыць, наколькі гэта важна, адключыце JavaScript у сваім браўзеры і паспрабуйце загрузіць старонку.
Гэтыя вэб-сайты не будуць працаваць належным чынам. Іх змесціва часта паводзіць сябе дрэнна. Амаль усе сучасныя браўзеры змешваюць HTML, CSS і JavaScript.
JavaScript - адзін з інтэрпрэтаваных мовы праграмавання. Інтэрпрэтатар ужо ўключаны ў многія браўзеры, уключаючы Google Chrome, Microsoft Internet Explorer і іншыя.
Такім чынам, яго код можа быць апрацаваны JavaScript Engine браўзера. Вось пытанні і адказы на інтэрв'ю JS для пачаткоўцаў і экспертаў, калі вы гатовыя да інтэрв'ю.
Мэта таго ж - пазнаёміць вас з тыпамі пытанняў, з якімі вы можаце сутыкнуцца падчас тэхнічнага інтэрв'ю. Давайце пачнем.
1. Што для вас значыць JavaScript?
Найбольш часта выкарыстоўванай мовай вэб-сцэнароў, якая выкарыстоўваецца як для кліенцкага, так і для сервернага праграмавання, з'яўляецца JavaScript. Код JavaScript можа быць змешчаны ў старонкі HTML, якія вэб-браўзеры могуць зразумець і выканаць, падтрымліваючы магчымасці аб'ектна-арыентаванае праграмаванне.
2. Назавіце дзве асноўныя парадыгмы праграмавання для распрацоўкі JavaScript.
Праграмаванне з дапамогай JavaScript, мовы з некалькімі парадыгмамі, дазваляе:
- працэдурнае/імператыўнае праграмаванне
- Аб'ектна-арыентаванае праграмаванне (ААП)
- Выкарыстанне функцыянальнага праграмавання
- Падыход праграмавання на аснове прататыпа або спадчыннасць на аснове прататыпа (пашырэнне ААП)
3. Што адрознівае JavaScript ад Java?
У той час як JavaScript - гэта ў асноўным мова сцэнарыяў, Java - гэта мова праграмавання. Java - гэта мова праграмавання, якая выкарыстоўваецца распрацоўшчыкамі для стварэння праграм, якія могуць працаваць у аперацыйнай сістэме кампутара, віртуальнай машыне або вэб-браўзеры. Наадварот, код JS прызначаны для працы толькі ў браўзеры.
Але выкарыстоўваючы Electron і Node.js, незалежныя настольныя праграмы можна ствараць у JavaScript. Код Java і JS істотна адрозніваюцца тым, што другі даступны ў тэкставым фармаце, а першы патрабуе кампіляцыі.
4. Якія формы дадзеных падтрымлівае JavaScript?
Тыпы дадзеных, якія падтрымлівае JavaScript, ўключаюць:
- Радок
- сімвал
- Нумар
- Аб'ект
- Не вызначана
- Null
- Boolean
5. Якімі якасцямі валодае JavaScript?
Гэта бясплатная і універсальная мова сцэнарыяў.
Гэта лёгкая інтэрпрэтаваная мова праграмавання.
Ён прызначаны для стварэння сетка-арыентаваных прыкладанняў.
Абодва звязаны і дапаўняюць Java.
6. Якія недахопы выкарыстання JavaScript?
Кадэры з вопытам змогуць абмеркаваць недахопы мовы, якую яны любяць, у дадатак да ўсхвалення яе пераваг. Бяспека - самы вялікі недахоп JavaScript. Шукайце інфармацыю аб тым, як ёю можна злоўжываць.
Дадатковым недахопам JavaScript з'яўляецца яго шырокае выкарыстанне і адаптыўнасць, што можа быць палкай аб двух канцах, таму што ён пакідае шмат свабоды дзеянняў для дзівацтваў праграмавання, якія могуць прывесці да нераўнамернай прадукцыйнасці ў розных сістэмах.
7. Як JavaScript дазваляе ствараць аб'ект?
Ідэя аб'ектаў добра падтрымліваецца JavaScript. Выкарыстоўваючы літаральны аб'ект, вы можаце стварыць аб'ект, як паказана ніжэй:
8. Як у JavaScript стварыць масіў?
Літарал масіва можна выкарыстоўваць для вызначэння масіваў наступным чынам:
9. Як вызначыць функцыю імя ў JavaScript і што гэта такое?
Калі названая функцыя вызначана, яна неадкладна вызначае імя. Яе можна апісаць наступным чынам з дапамогай ключавога слова function:
10. У JavaScript апішыце пад'ём.
Усе аб'явы зменных і функцый па змаўчанні ў JavaScript ссоўваюцца ўверх, што вядома як пад'ём. Гэта азначае, што ўсе зменныя і функцыі, незалежна ад таго, дзе яны вызначаны, перамяшчаюцца ў верхнюю частку вобласці. Ахоп можа быць мясцовым або міжнародным.
11. Што ўключаюць у сябе вобласці JavaScript зменнай?
Раздзел вашай праграмы, дзе вызначана зменная, з'яўляецца вобласцю зменнай. Зменная JavaScript можа мець толькі дзве вобласці.
- Глабальныя зменныя: усюды ў вашым кодзе JavaScript можна ўбачыць глабальную зменную, паколькі яна мае глабальны аб'ём.
- Лакальныя зменныя: лакальная зменная будзе бачная толькі ў функцыі, у якой яна аб'яўлена. Лакальныя для гэтай функцыі аргументы функцыі заўсёды прысутнічаюць.
12. Што хутчэй, скрыпт ASP або JavaScript?
Хутчэй - гэта JavaScript. JavaScript можа быць выкананы без дапамогі вэб-сервера, таму што гэта мова на баку кліента. Аднак, паколькі ASP з'яўляецца сервернай мовай, ён заўсёды будзе павольней, чым JavaScript. У цяперашні час JavaScript таксама з'яўляецца сервернай мовай (nodejs).
13. Апішыце, чым прататыпная спадчыннасць адрозніваецца ад класічнай.
JavaScript валодае цудоўнай здольнасцю адмяняць строгія абмежаванні традыцыйнага наследавання і дазваляць аб'ектам наследаваць атрыбуты ад іншых аб'ектаў. –
- Класічнае наследаванне: з дапамогай ключавога слова «new» функцыя-канструктар стварае асобнік. Атрыбуты бацькоўскага класа перадаюцца ў гэты новы асобнік.
- Наследаванне прататыпа: існуючы аб'ект, які дзейнічае як прататып, капіюецца для стварэння асобніка. Выбарачнае наследаванне ад шырокага спектру аб'ектаў можа быць карысным для гэтага асобніка, які часта ствараецца праз фабрычную функцыю або «Object.create()».
14. Напішыце праграму, якая будзе дынамічна дадаваць новыя кампаненты.
15. Зваротны званок: што гэта?
Простая функцыя JavaScript, якая адпраўляецца ў якасці аргумента або опцыі метаду, вядомая як зваротны выклік. Тэрмін «зваротны выклік» адносіцца да функцыі, якая павінна быць выканана пасля выканання іншай функцыі. Функцыі - гэта аб'екты ў JavaScript. Аб'екты JavaScript - гэта функцыі. Такім чынам, функцыі могуць вяртаць іншыя функцыі і атрымліваць іншыя функцыі ў якасці ўваходных дадзеных.
16. Як можна адладзіць праграму JavaScript?
Пры націску адпаведнай клавішы, як правіла, клавішы F12, усе сучасныя вэб-браўзеры, уключаючы Chrome, Firefox і іншыя, пастаўляюцца з убудаваным адладчыкам, якім можна карыстацца ў любы час.
Карыстальнікі могуць скарыстацца мноствам функцый, прапанаваных інструментамі адладкі. Рэдактар кода, які мы выкарыстоўваем для стварэння прыкладанняў JavaScript, таксама дазваляе нам ліквідаваць непаладкі кода JavaScript.
17. Закрыццё: што гэта? Прывядзіце ілюстрацыю.
Калі да зменнай, вызначанай па-за бягучай вобласцю, звяртаюцца з вобласці, якая знаходзіцца ўнутры яе, ствараюцца замыканні. Гэта дазваляе атрымаць доступ да вобласці знешняй функцыі з унутранай функцыі.
Кожны раз, калі функцыя ствараецца ў JavaScript, таксама вырабляецца закрыццё. Проста напішыце функцыю ў іншай функцыі, адкрыйце яе, затым выкарыстоўвайце для рэалізацыі закрыцця.
18. Якія метады існуюць для ўключэння кода JavaScript у файл HTML?
Код JavaScript можа быць устаўлены адным з двух спосабаў:
- Калі на вэб-старонцы патрабуецца толькі некалькі радкоў сцэнарыя, мы можам напісаць код JavaScript у элеменце сцэнарыя ў тым жа файле HTML.
- Каб дадаць усе функцыі сцэнарыяў на вэб-старонку, не забіваючы код, мы можам імпартаваць зыходны файл JavaScript у дакумент HTML.
19. Як функцыянуюць таймеры ў JavaScript?
Таймеры выкарыстоўваюцца для запуску або паўтарэння фрагмента кода ў загадзя зададзены час. Для гэтага выкарыстоўваюцца метады setTimeout, setInterval і clearInterval.
З дапамогай функцыі setTimeout(function, delay) усталёўваецца таймер, які запускае пэўную функцыю пасля вызначанай затрымкі. Функцыя setInterval(function, delay) шматкроць запускае ўказаную функцыю з указанай затрымкай і спыняецца толькі пры адмене.
Таймер павінен скончыцца з дапамогай метаду clearInterval(id). Паколькі таймеры працуюць у адным патоку, падзеі могуць стаяць у чарзе і чакаць выканання.
20. Што вы думаеце пра печыва?
Кукі - гэта часта невялікі фрагмент даных, які вэб-сайт адпраўляе на камп'ютар карыстальніка і які захоўваецца там вэб-браўзерам, які выкарыстоўваўся для наведвання старонкі.
Файлы cookie выкарыстоўваюцца для фіксацыі дзеянняў па праглядзе вэб-сайтаў і запамінання інфармацыі для наступнага выкарыстання.
21. Як прыгатаваць печыва?
Ніжэй прыведзены самы просты метад JavaScript для стварэння файлаў cookie:
22. Якія пагадненні аб найменні зменных JavaScript?
Называючы зменныя ў JavaScript, вы павінны прытрымлівацца наступных правілаў:
Любыя зарэзерваваныя ключавыя словы JavaScript не павінны выкарыстоўвацца ў якасці імёнаў зменных. Напрыклад, імёны зменных, якія заканчваюцца на break або boolean, недапушчальныя.
Імя зменнай у JavaScript не павінна пачынацца з лічбы (0-9). Яны павінны пачынацца з літары або сімвала падкрэслівання.
Напрыклад, 123name не з'яўляецца прымальным імем зменнай, хоць _123name або name123 - гэта. Рэгістр мае значэнне ў назвах зменных JavaScript. Тэст і тэст, напрыклад, дзве розныя зменныя.
23. Чым let і var адрозніваюцца адзін ад аднаго?
У JavaScript дэкларацыі зменных і метадаў можна зрабіць з дапамогай let або var. Адзінае сапраўднае адрозненне паміж гэтымі двума заключаецца ў тым, што ключавое слова let вызначаецца блокам, а ключавое слова var - функцыяй.
24. Чаму існуюць функцыі самавыкліку?
Імгненна выкліканыя функцыянальныя выразы або самавыконвальныя ананімныя функцыі - іншыя іх назвы. Яны вядомыя як «функцыі самавыкліку», паколькі яны аўтаматычна выклікаюцца кодам.
Мы пішам функцыю і выклікаем яе. Аднак ананімныя функцыі могуць быць выкарыстаны, калі мы хочам, каб функцыя запускалася аўтаматычна, калі яна тлумачыцца, і калі мы не будзем выкарыстоўваць яе зноў. Акрамя таго, некаторыя функцыі не маюць назвы.
25. Што адрознівае ўласцівасць ад атрыбутаў?
Атрыбуты аб'ектаў JS DOM функцыянуюць аналагічна зменным асобнікаў для пэўных кампанентаў. Уласцівасць можа ўключаць розныя віды даных.
Вы можаце атрымаць доступ да ўласцівасцей, узаемадзейнічаючы з аб'ектам у Vanilla JS або выкарыстоўваючы функцыю prop() jQuery.
Атрыбуты знаходзяцца ў HTML, а не ў DOM. Яны параўнальныя з уласцівасцямі, але маюць меншыя магчымасці. Калі ўласцівасці даступныя, працаваць з імі рэкамендуецца, чым з атрыбутамі.
Атрыбут - гэта радковы тып дадзеных, у адрозненне ад уласнасці.
26. Што робяць функцыі стрэлак у JavaScript?
У JavaScript функцыі са стрэлкамі - гэта хуткі і зразумелы спосаб напісання функцый. Функцыя стрэлка мае наступны агульны сінтаксіс:
27. Што такое друкаваная мова?
Значэнні, а не зменныя звязаны адзін з адным у тыпізаваных мовах. Ёсць дзве катэгорыі:
Дынамічна: у адрозненне ад JS, дзе зменная можа прымаць лік або радок, гэта дазваляе зменнай утрымліваць шмат відаў.
Статычна: у гэтым выпадку зменная можа захоўваць толькі адзін тып; напрыклад, у Java радковая зменная можа захоўваць толькі пэўны набор сімвалаў.
28. Калі ласка, апішыце ў JavaScript NEGATIVE INFINITY.
Калі адмоўны цэлы лік дзеліцца на 0, у JS ствараецца статычная ўласцівасць NEGATIVE INFINITY. Вось некаторыя з яго важных рыс:
Для доступу да NEGATIVE INFINITY не трэба ствараць ніякіх дадатковых аб'ектаў.
Значэнне ўласцівасці NEGATIVE INFINITY адпавядае адмоўнаму значэнню ўласцівасці infinity для глабальнага аб'екта.
29. Што адрознівае undefined ад null?
Undefined пазначае заяўленую зменную, якой яшчэ не было прысвоена значэнне. З іншага боку, Null - гэта значэнне прысваення. Ён можа быць выкарыстаны для ўказання адсутнасці значэння і можа быць прысвоены зменнай.
Undefined - гэта тып сам па сабе (невызначаны), тады як null - гэта аб'ект. Undefined і null таксама два розныя віды.
30. Напішыце код JavaScript, каб паказаць, як атрымаць унутраны HTML элемента.
31. Якія фрэймворкі JavaScript?
Фреймворк прыкладанняў, створаны ў JavaScript, вядомы як фрэймворк JavaScript. З пунтку гледжання кантроль патоку, гэта адрозніваецца ад бібліятэкі JavaScript. Ёсць некалькі даступных фрэймворкаў JavaScript, аднак некаторыя з найбольш папулярных ўключаюць:
- вуглаваты
- Рэагаваць
- Ую
32. Што такое ўсплыванне падзеі ў JavaScript?
Калі падзея адбываецца ў адным элеменце ўнутры іншага элемента і абодва элемента зарэгістравалі дэскрыптар для гэтай падзеі, API HTML DOM выкарыстоўвае бурбалкі падзей як метад распаўсюджвання падзеі.
Калі ёсць бурбалкі, падзея першапачаткова выяўляецца і апрацоўваецца самым унутраным элементам, перш чым перадаецца навакольным кампанентам.
Пачынаючы з гэтай падзеі, выкананне пераходзіць да бацькоўскага элемента. Пасля гэтага яго бацькоўскі элемент атрымлівае выкананне, і так да элемента body.
33. Што азначае запамінанне JavaScript?
Запамінанне - гэта метад аптымізацыі, які паскарае ваш код шляхам захавання вынікаў дарагіх выклікаў функцый і іх паўторнага выкарыстання пры паўторным атрыманні таго ж уводу.
Функцыя лічыцца дарагой, калі для яе выканання патрабуецца шмат часу і памяці, паколькі яна выконвае складаныя вылічэнні. Кэш імгненна запаўняецца вынікам выкліку дарагой функцыі.
Гэтая ж функцыя будзе абыходзіць неабходныя вылічэнні і вяртаць кэшаванае значэнне, калі яна будзе выклікана зноў з тымі ж уваходнымі параметрамі.
Паколькі функцыі не трэба паўтараць якія-небудзь вылічэнні або вылічэнні, якія яна ўжо выканала, гэты метад істотна эканоміць час і памяць, якія выкарыстоўвае ваша праграма.
34. Што азначаюць імпарт і экспарт?
Мы можам стварыць модульны код JavaScript з дапамогай імпарту і экспарту. Мы можам падзяліць наш код на некалькі файлаў з дапамогай імпарту і экспарту. Прыклады ўключаюць
35. Што такое «Строгі» рэжым JavaScript і як ён актывуецца?
Вы можаце палепшыць праверку памылак у сваім кодзе, выкарыстоўваючы строгі рэжым.
Пры выкарыстанні строгага рэжыму вы не можаце дадаваць уласцівасці да непашыраных аб'ектаў, прысвойваць значэнні ўласцівасцям толькі для чытання, выкарыстоўваць няяўна заяўленыя зменныя або прысвойваць значэнні зменным толькі для чытання.
Пачынаючы файл, праграму або функцыю з «use strict», вы можаце актываваць строгі рэжым.
36. Што выконвае аператар instanceof?
Аператар instanceof вызначае, ці ёсць у ланцужку прататыпаў аб'екта асобнікі ўласцівасці прататыпа канструктара. Іншымі словамі, аператар instanceof падчас выканання вызначае, ці з'яўляецца аб'ект асобнікам класа.
Аператар instanceof выкарыстоўваецца ў прыкладзе ніжэй для вызначэння тыпу карыстальнікаў зменнай.
37. Што азначае поле падказкі ў JavaScript?
Поле падказкі - гэта поле з тэкставым полем, якое дазваляе карыстальніку ўводзіць увод. Дыялогавае акно з запытам на ўвод адлюстроўваецца праз функцыю prompt(). Выкарыстоўвайце поле падказкі, калі вам трэба, каб карыстальнік увёў значэнне перад праглядам старонкі.
Каб працягнуць, карыстальнік павінен выбраць «ОК» або «Адмена» ва ўсплываючым акне, якое з'явіцца пасля ўводу значэння.
38. Што робіць генератар у JavaScript?
Генератары - гэта функцыі, якія можна выкарыстоўваць у розны час. Кантэкст і прывязкі зменных гэтых функцый захоўваюцца і падтрымліваюцца падчас паўторных уваходаў.
Першапачатковы выклік функцыі генератара вяртае пэўны від ітэратара, які называецца генератарам. Наступны крок - выклікаць наступны метад генератара для выкарыстання значэння. Функцыя генератара працягвае працаваць, пакуль не сустрэнецца ключавое слова yield.
39. BOM: што гэта?
BOM, або аб'ектная мадэль браўзера, дазваляе карыстальнікам ўзаемадзейнічаць з браўзерамі, у якіх акно служыць першым аб'ектам. У дадатак да іншых функцый аб'ект акна мае дакумент, гісторыю, экран, навігатар і месцазнаходжанне.
Аднак да функцый акна можна атрымаць доступ як непасрэдна, так і праз спасылку на акно.
40. Адкладзеныя скрыпты: якую функцыю яны выконваюць у JavaScript?
Браўзер пачынае разбіраць HTML-код пры загрузцы старонкі. Па змаўчанні браўзер прыпыняе разбор HTML-кода, калі сустракае скрыпт, і пачынае запускаць скрыпт замест гэтага.
Пасля завяршэння скрыпту браўзер аднаўляе апрацоўку HTML-кода.
Загрузка старонкі будзе затрымлівацца з-за млявага сервера або вялікага сцэнарыя. Адкладзеныя скрыпты адкладаюць выкананне скрыпта да апрацоўкі дакумента.
Гэтая затрымка ў выкананні скрыпту скарачае час, неабходны для загрузкі вэб-старонкі.
заключэнне
Мы спадзяемся, што гэтыя пытанні інтэрв'ю па JavaScript будуць карысныя для вас, будзь вы распрацоўшчык, які рыхтуецца да сустрэчы, або менеджэр па найму, які спрабуе знайсці патрэбнага прэтэндэнта.
Памятайце, што тэхнічны вопыт і веды складаюць толькі малую частку працэсу найму. Каб пераканацца, што вы знайшлі (або знайшлі падыходзячага прэтэндэнта) на працу, мінулы вопыт і навыкі зносін аднолькава важныя.
Майце на ўвазе, што на адкрытыя пытанні інтэрв'ю па JavaScript часта ёсць некалькі правільных адказаў. Інтэрв'юераў цікавіць аргументацыя вашых адказаў, а не толькі адказ, які вы запомнілі.
Будзьце гатовыя да наступных запытаў аб тым, як вы прыйшлі да свайго адказу, і заўсёды зможаце растлумачыць свой працэс мыслення.
КУПІЦЬ Серыя інтэрв'ю Хашдорка за дапамогу ў падрыхтоўцы да сумоўя.
Arun
Нічога сабе, гэты артыкул вельмі дапамог мне падчас падрыхтоўкі да інтэрв'ю на Javascript