JS jobbintervju Flashcards
Vad är skillnaden mellan null och undefined?
null används för att indikera frånvaro av värde, undefined betyder att en variabel inte har tilldelats ett värde ännu.
Vad är skillnaden mellan let, const och var när du deklarerar variabler?
let och const är blockomfattande och har blockscope, medan var har funktionsscope. let kan ändras, const är konstant.
Vad är en closure?
En closure är en funktion tillsammans med den omgivande omfattningen av variabler.
Vad är skillnaden mellan synkron och asynkron kod?
Synkron kod körs i sekvens.
Asynkron kod kan utföras parallellt och väntar inte på att en uppgift ska slutföras innan den går vidare.
Vad är prototypkedja (prototype chain) och hur fungerar det i JavaScript?
Prototypkedjan är en mekanism för att söka efter egenskaper i objekts prototyp och dess prototypkedjor. Om en egenskap inte hittas i objektet söks det i dess prototyp och så vidare.
När används en callback-funktion oftast?
Den används i asynkron kod för att hantera resultatet av en uppgift.
Vad är en IIFE (Immediately Invoked Function Expression)?
En IIFE är en funktion som definieras och omedelbart körs.
Hur väljer du ett element med JavaScript?
querySelector och getElementById
Hur lägger du till en händelselyssnare på ett HTML-element?
Använd addEventListener för att lägga till en händelselyssnare på ett HTML-element. Det tar två argument: typen av händelse och en funktion som ska köras när händelsen inträffar.
Vad är event bubbling och event delegation?
Event bubbling är när en händelse sprider sig genom DOM-trädet från det mest specifika elementet upp till dokumentet.
Event delegation är att placera en event listener på en gemensam förälder för att hantera händelser på dess barn. Det minskar antalet lyssnare och fungerar bra för dynamiskt skapade element.
Vad är arrow-funktioner och vad skiljer dem från vanliga funktioner?
Anonyma funktioner med kortare syntax.
Binder inte sitt eget this, vilket gör dem användbara i vissa sammanhang för att undvika problem med scopet av this.
Vad är destructuring?
Destructuring är en teknik som gör det möjligt att extrahera värden från objekt och arrayer och tilldela dem till variabler.
Hur används promises för att hantera asynkron kod?
Genom att representera resultatet av en asynkron operation. Det gör det möjligt att skriva kod som ser ut som synkron kod.
Vad är skillnaden mellan map(), filter() och reduce()?
map() gör något med varje element i en array och returnerar en ny array med de nya värdena.
filter() filtrerar element i en array baserat på ett villkor och returnerar en ny array.
reduce() används för att reducera arrayen till ett enda värde genom att applicera en funktion på varje element.
Vad står AJAX för?
AJAX står för Asynchronous JavaScript and XML.
Nämn 2 sätt att göra ett HTTP GET-anrop med JavaScript?
fetch() eller XMLHttpRequest
fetch() är en modern metod som returnerar en Promise som innehåller svaret från servern.
Vad är ett CORS-problem och hur kan det lösas?
CORS (Cross-Origin Resource Sharing) är en säkerhetsåtgärd som hindrar obehörig dataåtkomst över olika domäner.
Ställ in servern för att tillåta åtkomst från specifika domäner med hjälp av HTTP-headers.
Skillnad mellan Angular, React och Vue?
- Angular: ramverk för att bygga stora och komplexa applikationer.
- React: js-bibliotek för att bygga användargränssnitt med fokus på komponentbaserad utveckling.
- Vue: progressivt ramverk som är lätt att integrera och använda.