Sisukord[Peida][Näita]
- 1. Mida JavaScript teie jaoks tähendab?
- 2. Nimetage kaks põhilist programmeerimisparadigmat JavaScripti arendamiseks.
- 3. Mis eristab JavaScripti Javast?
- 4. Milliseid andmevorme JavaScript toetab?
- 5. Millised omadused on JavaScriptil?
- 6. Millised on JavaScripti kasutamise puudused?
- 7. Kuidas JavaScript võimaldab teil objekti ehitada?
- 8. Kuidas koostada JavaScriptis massiiv?
- 9. Kuidas defineerida JavaScriptis nimefunktsiooni ja mis see on?
- 10. Kirjeldage JavaScriptis tõstmist.
- 11. Mida hõlmavad muutuja JavaScripti ulatused?
- 12. Kumb on kiirem, ASP-skript või JavaScript?
- 13. Kirjeldage, kuidas prototüüpne pärand erineb klassikalisest pärandist.
- 14. Kirjutage programm, mis lisab dünaamiliselt uusi komponente.
- 15. Tagasihelistamine: mis see on?
- 16. Kuidas saab JavaScripti programmi siluda?
- 17. Sulgemine: mis see on? Tooge illustratsioon.
- 18. Millised meetodid on olemas JavaScripti koodi lisamiseks HTML-faili?
- 19. Kuidas toimivad JavaScripti taimerid?
- 20. Millised on teie seisukohad küpsiste kohta?
- 21. Kuidas teha küpsiseid?
- 22. Millised on JavaScripti muutujate nimetamise kokkulepped?
- 23. Mille poolest erinevad let ja var üksteisest?
- 24. Miks eksisteerivad ise kutsuvad funktsioonid?
- 25. Mis eristab omadust atribuutidest?
- 26. Mida teevad noolefunktsioonid JavaScriptis?
- 27. Mis on keel, mida trükitakse?
- 28. Kirjeldage JavaScriptis NEGATIIVSET LÕPMATUST.
- 29. Mis eristab määratlemata nullist?
- 30. Kirjutage JavaScripti kood, mis näitab, kuidas hankida elemendi sisemist HTML-i.
- 31. Millised on JavaScripti raamistikud?
- 32. Mis on JavaScriptis sündmuse mullitamine?
- 33. Mida tähendab JavaScripti meeldejätmine?
- 34. Mida tähendab import ja eksport?
- 35. Mis on JavaScripti range režiim ja kuidas see aktiveeritakse?
- 36. Mis saavutab operaatori instanceof?
- 37. Mida tähendab viipakast JavaScriptis?
- 38. Mida teeb generaator JavaScriptis?
- 39. BOM: mis see on?
- 40. Edasilükatud skriptid: millist funktsiooni need JavaScriptis täidavad?
- Järeldus
Tasuta ja avatud lähtekoodiga programmeerimiskeel on JavaScript. See on mõeldud kasutamiseks veebipõhiste rakenduste loomiseks. See on kerge ja tõlgendatav, mis muudab selle teistest keeltest palju kiiremaks.
JavaScripti on selles lihtsam kasutada veebirakendused selle HTML-i integreerimise tõttu. Et teha kindlaks, kui oluline see on, keelake oma brauseris JavaScript ja proovige leht laadida.
Need veebisaidid ei tööta korralikult. Nende sisu käitub sageli halvasti. Peaaegu kõik kaasaegsed brauserid kombineerivad HTML-i, CSS-i ja JavaScripti.
JavaScript on üks tõlgendatavatest programmeerimiskeeled. Tõlk on juba lisatud paljudes brauserites, sealhulgas Google Chrome'is, Microsoft Internet Exploreris ja teistes.
Seega saab selle koodi töödelda brauseri JavaScripti mootor. Siin on algaja ja eksperditaseme JS-intervjuu küsimused ja vastused, kui olete intervjuuks valmis.
Selle eesmärk on tutvustada teile, millist tüüpi küsimusi võite tehnilise vestluse ajal kokku puutuda. Alustagem.
1. Mida JavaScript teie jaoks tähendab?
Enimkasutatav veebiskriptimiskeel, mida kasutatakse nii kliendi- kui ka serveripoolseks programmeerimiseks, on JavaScript. JavaScripti koodi saab paigutada HTML-lehtedele, mida veebibrauserid mõistavad ja käivitavad, toetades objektorienteeritud programmeerimine.
2. Nimetage kaks põhilist programmeerimisparadigmat JavaScripti arendamiseks.
Programmeerimine JavaScriptiga, mitme paradigma keelega, võimaldab:
- protseduuriline/imperatiivne programmeerimine
- Objektorienteeritud programmeerimine (OOP)
- Funktsionaalse programmeerimise kasutamine
- Prototüübipõhine programmeerimisviis või prototüübipõhine pärand (OOP-i laiendus)
3. Mis eristab JavaScripti Javast?
Kui JavaScript on peamiselt skriptikeel, siis Java on programmeerimiskeel. Java on programmeerimiskeel, mida arendajad kasutavad programmide loomiseks, mis võivad töötada arvuti operatsioonisüsteemis, virtuaalmasinas või veebibrauseris. Seevastu JS-kood on loodud töötama ainult brauseris.
Kuid kasutades Electronit ja Node.js-i, saab JavaScriptis luua sõltumatuid töölauarakendusi. Java ja JS kood erinevad oluliselt selle poolest, et viimane on saadaval tekstivormingus, esimene aga nõuab kompileerimist.
4. Milliseid andmevorme JavaScript toetab?
Andmetüübid, mida JavaScript toetab, hõlmavad järgmist:
- nöör
- Sümbol
- Number
- objekt
- Defineerimata
- NULL
- Boolean
5. Millised omadused on JavaScriptil?
See on tasuta ja universaalne skriptikeel.
See on tõlgendatav programmeerimiskeel, mis on kerge.
See on mõeldud kasutamiseks võrgukesksete rakenduste loomiseks.
Mõlemad on Javaga ühendatud ja täiendavad.
6. Millised on JavaScripti kasutamise puudused?
Kogemustega kodeerijad saavad lisaks selle vooruste ülistamisele arutleda ka oma eelistatud keele puuduste üle. Turvalisus on JavaScripti halvim viga. Otsige teavet selle kohta, kuidas seda kuritarvitada.
JavaScripti veel üks puudus on selle laialdane kasutamine ja kohanemisvõime, mis võib olla kahe teraga mõõk, kuna jätab palju mänguruumi programmeerimise veidrustele, mis võivad põhjustada erinevate süsteemide ebaühtlast jõudlust.
7. Kuidas JavaScript võimaldab teil objekti ehitada?
JavaScript toetab hästi objektide ideed. Objekti literaali abil saate ehitada objekti, nagu allpool näha:
8. Kuidas koostada JavaScriptis massiiv?
Massiiviliteraali saab kasutada massiivide määratlemiseks järgmiselt:
9. Kuidas defineerida JavaScriptis nimefunktsiooni ja mis see on?
Kui nimega funktsioon on määratletud, määrab see kohe nime. Funktsiooni märksõna abil saab seda kirjeldada järgmiselt:
10. Kirjeldage JavaScriptis tõstmist.
Kõik muutujate ja funktsioonide deklaratsioonid nihutatakse JavaScriptis vaikimisi üles, mida nimetatakse tõstmiseks. See tähendab, et kõik muutujad ja funktsioonid, olenemata nende defineerimisest, paigutatakse ümber ulatuse tippu. Katvus võib olla kohalik või rahvusvaheline.
11. Mida hõlmavad muutuja JavaScripti ulatused?
Teie programmi jaotis, kus muutuja on määratletud, on muutuja ulatus. JavaScripti muutujal võib olla ainult kaks ulatust.
- Globaalsed muutujad: kõikjal teie JavaScripti koodis näete globaalset muutujat, kuna sellel on globaalne ulatus.
- Kohalikud muutujad: kohalik muutuja on nähtav ainult funktsiooni sees, milles see on deklareeritud. Selle funktsiooni lokaalsed funktsiooni argumendid on alati olemas.
12. Kumb on kiirem, ASP-skript või JavaScript?
Kiirem on JavaScript. JavaScripti saab käivitada ilma veebiserveri abita, kuna see on kliendipoolne keel. Kuna ASP on aga serveripoolne keel, on see alati aeglasem kui JavaScript. Praegu on JavaScript ka serveripoolne keel (nodejs).
13. Kirjeldage, kuidas prototüüpne pärand erineb klassikalisest pärandist.
JavaScriptil on suurepärane võime kaotada traditsioonilise pärimise ranged piirangud ja lubada objektidel pärida atribuute teistelt objektidelt. –
- Klassikaline pärand: märksõna "uus" abil loob konstruktori funktsioon eksemplari. Ülemklassi atribuudid edastatakse sellele uuele eksemplarile.
- Prototüübi pärimine: olemasolev objekt, mis toimib prototüübina, kopeeritakse eksemplari genereerimiseks. Selle eksemplari puhul, mis luuakse sageli tehasefunktsiooni või "Object.create()" kaudu, võib olla kasulik selektiivne pärimine paljudest objektidest.
14. Kirjutage programm, mis lisab dünaamiliselt uusi komponente.
15. Tagasihelistamine: mis see on?
Lihtsat JavaScripti funktsiooni, mis saadetakse meetodi argumendi või valikuna, nimetatakse tagasihelistamiseks. Mõiste "tagasihelistamine" viitab funktsioonile, mis on ette nähtud täitmiseks pärast mõne muu funktsiooni täitmist. Funktsioonid on JavaScripti objektid. JavaScripti objektid on funktsioonid. Funktsioonid võivad seetõttu tagastada teisi funktsioone ja saada muid funktsioone sisenditena.
16. Kuidas saab JavaScripti programmi siluda?
Kui vajutate vastavat klahvi, tavaliselt klahvi F12, on kõik kaasaegsed veebibrauserid, sealhulgas Chrome, Firefox ja teised, varustatud manustatud siluriga, mida saab igal ajal kasutada.
Kasutajad saavad kasutada mitmeid silumistööriistade pakutavaid funktsioone. Koodiredaktor, mida kasutame JavaScripti rakenduste loomiseks, võimaldab meil teha ka JavaScripti koodi tõrkeotsingut.
17. Sulgemine: mis see on? Tooge illustratsioon.
Kui väljaspool praegust ulatust määratud muutujale pääseb juurde selle sees olevast ulatusest, luuakse sulgemised. See võimaldab teil sisemisest funktsioonist juurde pääseda välise funktsiooni ulatusele.
Iga kord, kui JavaScriptis funktsioon genereeritakse, luuakse ka sulgemine. Lihtsalt kirjutage funktsioon teise funktsiooni sisse, paljastage see ja seejärel kasutage seda sulgemiseks.
18. Millised meetodid on olemas JavaScripti koodi lisamiseks HTML-faili?
JavaScripti koodi saab sisestada peamiselt kahel viisil:
- Kui veebilehel on vaja vaid mõnda rida skriptimist, saame kirjutada JavaScripti koodi sama HTML-faili skriptielemendi sisse.
- Kõigi skriptimisfunktsioonide lisamiseks veebilehele ilma koodi ummistamata saame importida JavaScripti lähtefaili HTML-dokumenti.
19. Kuidas toimivad JavaScripti taimerid?
Taimereid kasutatakse koodijupi käivitamiseks või kordamiseks etteantud ajal. Selleks kasutatakse meetodeid setTimeout, setInterval ja clearInterval.
Funktsiooni setTimeout (funktsioon, viivitus) abil seadistatakse taimer, mis käivitab teatud funktsiooni pärast määratud viivitust. Funktsioon setInterval(funktsioon, viivitus) käivitab korduvalt määratud funktsiooni määratud viivitusega ja peatub ainult tühistamisel.
Taimer kästakse lõpetada, kasutades meetodit clearInterval(id). Kuna taimereid käitatakse ühel lõimel, võivad sündmused olla järjekorda ja oodata, et neid täidetaks.
20. Millised on teie seisukohad küpsiste kohta?
Küpsis on sageli väike andmekild, mille veebisait saadab kasutaja arvutisse ja mis salvestatakse sinna lehe külastamiseks kasutatud veebilehitseja poolt.
Küpsiseid kasutatakse veebisaidi vaatamise tegevuste jäädvustamiseks ja teabe meeldejätmiseks hilisemaks kasutamiseks.
21. Kuidas teha küpsiseid?
Järgmine on lihtsaim JavaScripti meetod küpsiste genereerimiseks:
22. Millised on JavaScripti muutujate nimetamise kokkulepped?
JavaScriptis muutujate nimetamisel peate järgima järgmisi reegleid:
JavaScripti reserveeritud märksõnu ei tohiks muutujate nimedena kasutada. Näiteks murde või tõeväärtusega lõppevad muutujate nimed on kehtetud.
JavaScripti muutuja nimi ei tohiks alata numbriga (0–9). Need peavad algama tähe või alakriipsuga.
Näiteks 123nimi ei ole aktsepteeritav muutuja nimi, kuigi _123nimi või nimi123 on. JavaScripti muutujate nimedes on suur- ja suurtähtede tähtsus. Näiteks test ja test on kaks erinevat muutujat.
23. Mille poolest erinevad let ja var üksteisest?
JavaScriptis saab muutujate ja meetodite deklaratsioone teha kas let või var abil. Ainus tegelik erinevus nende kahe vahel on see, et märksõna let on hõlmatud plokiga, samas kui märksõna var on funktsiooni ulatusega.
24. Miks eksisteerivad ise kutsuvad funktsioonid?
Kohe käivitatavad funktsiooniavaldised või isetäituvad anonüümsed funktsioonid on nende muud nimetused. Neid nimetatakse "isekutsuvateks funktsioonideks", kuna kood kutsub neid automaatselt.
Kirjutame funktsiooni ja kutsume selle. Anonüümseid funktsioone võidakse siiski kasutada, kui tahame, et funktsioon käivituks automaatselt, kui seda selgitatakse, ja kui me seda enam ei kasuta. Lisaks puudub mõnel funktsioonil nimi.
25. Mis eristab omadust atribuutidest?
JS DOM-i objektide atribuudid toimivad sarnaselt teatud komponentide eksemplari muutujatele. Atribuut võib sisaldada erinevat tüüpi andmeid.
Atribuutidele pääsete juurde Vanilla JS-i objektiga suhtlemisel või jQuery funktsiooni prop() abil.
Atribuudid leiate HTML-ist, mitte DOM-ist. Need on omadustega võrreldavad, kuid neil on vähem võimeid. Kui atribuudid on saadaval, on atribuutidega töötamise asemel soovitatav nendega töötada.
Atribuut on stringi andmetüüp, mitte atribuut.
26. Mida teevad noolefunktsioonid JavaScriptis?
JavaScriptis on noolefunktsioonid kiire ja selge meetod funktsioonide kirjutamiseks. Noolefunktsioonil on järgmine üldine süntaks:
27. Mis on keel, mida trükitakse?
Tüübitud keeltes on omavahel seotud pigem väärtused kui muutujad. Kategooriaid on kaks:
Dünaamiliselt: erinevalt JS-ist, kus muutuja võib aktsepteerida arvu või stringi, võimaldab see muutujal sisaldada mitut tüüpi.
Staatiliselt: selles saab muutuja salvestada ainult ühte tüüpi; näiteks Java-s saab stringimuutuja salvestada ainult teatud tähemärkide komplekti.
28. Kirjeldage JavaScriptis NEGATIIVSET LÕPMATUST.
Kui negatiivne täisarv jagatakse 0-ga, luuakse JS-is tulemuseks olev staatiline omadus NEGATIIVNE LÕPMATUS. Need on mõned selle olulised omadused:
NEGATIVE INFINITY juurde pääsemiseks ei tohi luua täiendavaid objekte.
Atribuudi NEGATIVE INFINITY väärtus vastab globaalse objekti lõpmatuse atribuudi negatiivsele väärtusele.
29. Mis eristab määratlemata nullist?
Määratlemata tähistab deklareeritud muutujat, millele pole veel väärtust antud. Null on seevastu määramisväärtus. Seda saab kasutada väärtuse puudumise näitamiseks ja muutujale omistamiseks.
Undefined on tüüp omaette (määratlemata), null on aga objekt. Määratlemata ja null on samuti kaks erinevat tüüpi.
30. Kirjutage JavaScripti kood, mis näitab, kuidas hankida elemendi sisemist HTML-i.
31. Millised on JavaScripti raamistikud?
JavaScriptis loodud rakendusraamistikku tuntakse JavaScripti raamistikuna. Seoses juhtida voolu, erineb see JavaScripti teegist. Saadaval on mitu JavaScripti raamistikku, kuid mõned populaarsemad on järgmised:
- nurgeline
- Reageerima
- Vue
32. Mis on JavaScriptis sündmuse mullitamine?
Kui sündmus toimub ühes elemendis teise elemendi sees ja mõlemad elemendid on registreerinud selle sündmuse jaoks käepideme, kasutab HTML DOM API sündmuste levitamise meetodina sündmuste mullitamist.
Mullitamise korral tuvastab ja töötleb sündmus algselt kõige sisemine element, enne kui see edastatakse ümbritsevatele komponentidele.
Alates sellest sündmusest liigub täitmine selle emaelemendile. Pärast seda saab selle ülemelement täitmise ja nii edasi kuni kehaelemendini.
33. Mida tähendab JavaScripti meeldejätmine?
Meeldejätmine on optimeerimismeetod, mis kiirendab teie koodi, salvestades kallite funktsioonikõnede tulemused ja kasutades neid uuesti, kui sama sisend uuesti vastu võetakse.
Funktsiooni nimetatakse kulukaks, kui selle täitmine nõuab palju aega ja mälu, kuna see teeb keerukaid arvutusi. Vahemälu täidetakse kiiresti kalli funktsioonikõne tulemusega.
Sama funktsioon möödub vajalikust arvutusest ja tagastab vahemällu salvestatud väärtuse, kui seda samade sisendparameetritega uuesti kutsutakse.
Kuna funktsioon ei pea juba sooritatud arvutusi uuesti tegema, säästab see meetod oluliselt aega ja mälu, mida teie programm kasutab.
34. Mida tähendab import ja eksport?
Impordi ja ekspordi abil saame luua modulaarse JavaScripti koodi. Impordi ja ekspordi abil saame koodi jagada mitmeks failiks. Näited hõlmavad järgmist
35. Mis on JavaScripti range režiim ja kuidas see aktiveeritakse?
Saate parandada oma koodi vigade kontrollimist range režiimi abil.
Range režiimi kasutamisel ei saa te mittelaiendatavatele objektidele atribuute lisada, kirjutuskaitstud omadustele väärtusi määrata, kaudselt deklareeritud muutujaid kasutada ega kirjutuskaitstud muutujatele väärtusi määrata.
Alustades faili, programmi või funktsiooni sõnaga "use range", saate aktiveerida range režiimi.
36. Mis saavutab operaatori instanceof?
Operaator instanceof määrab, kas objekti prototüübi ahelas on konstruktori prototüübi atribuudi eksemplare. Teisisõnu, operaator instanceof määrab käitusajal, kas objekt on klassi eksemplar.
Operaatorit instanceof kasutatakse allolevas näites muutuja kasutajate tüübi määramiseks.
37. Mida tähendab viipakast JavaScriptis?
Viibakast on kast tekstikastiga, mis võimaldab kasutajal sisestada. Funktsiooni prompt() kaudu kuvatakse sisendit küsiv dialoogiboks. Kasutage viipakasti, kui peate enne lehe nägemist väärtuse sisestama.
Jätkamiseks peab kasutaja valima pärast väärtuse sisestamist hüpikaknas "OK" või "Tühista".
38. Mida teeb generaator JavaScriptis?
Generaatorid on funktsioonid, mida saab kasutada erinevatel aegadel. Nende funktsioonide kontekst ja muutujate sidumised salvestatakse ja neid säilitatakse kogu kordussisenemise ajal.
Generaatorifunktsiooni esialgne kutse tagastab teatud tüüpi iteraatori, mida nimetatakse generaatoriks. Järgmine samm on generaatori järgmise meetodi kutsumine väärtuse kasutamiseks. Generaatori funktsioon jätkab töötamist seni, kuni tekib tulu märksõna.
39. BOM: mis see on?
BOM ehk brauseri objektimudel võimaldab kasutajatel suhelda brauseritega, mille esimese objektina toimib aken. Lisaks muudele funktsioonidele on aknaobjektil dokument, ajalugu, ekraan, navigaator ja asukoht.
Akna funktsioonile pääseb aga ligi nii otse kui ka aknale viidates.
40. Edasilükatud skriptid: millist funktsiooni need JavaScriptis täidavad?
Lehe laadimisel hakkab brauser HTML-koodi sõeluma. Vaikimisi peatab brauser HTML-koodi sõelumise, kui ta kohtab skripti, ja alustab selle asemel skripti käitamist.
Pärast skripti valmimist jätkab brauser HTML-koodi töötlemist.
Lehe laadimine viibib aeglase serveri või suure skripti tõttu. Edasilükatud skriptid lükkavad skripti käitamise edasi kuni dokumendi töötlemiseni.
See viivitus skripti täitmisel vähendab veebilehe laadimiseks kuluvat aega.
Järeldus
Loodame, et need JavaScripti intervjuu küsimused on teile abiks, olenemata sellest, kas olete kohtumiseks valmistuv arendaja või värbamisjuht, kes püüab leida õiget kandidaati.
Pidage meeles, et tehnilised teadmised ja teadmised moodustavad vaid väikese osa värbamisprotsessist. Töökoha leidmise (või sobiva kandidaadi leidmise) tagamiseks on sama olulised varasemad kogemused ja pehmed oskused.
Pidage meeles, et avatud JavaScripti intervjuu küsimustele on sageli mitu õiget vastust. Intervjueerijaid huvitab teie vastuste põhjendus, mitte ainult vastus, mille pähe õppisite.
Olge valmis järelpärimisteks selle kohta, kuidas te oma vastuseni jõudsite, ja suutke alati oma mõttekäiku selgitada.
Kontrollima Hashdorki intervjuude sari abi saamiseks intervjuu ettevalmistamisel.
Arun
Vau, see artikkel aitas mind Javascripti intervjuu ettevalmistamisel palju