Skip to content

Instantly share code, notes, and snippets.

@Poetro
Created December 15, 2013 10:57
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save Poetro/7971559 to your computer and use it in GitHub Desktop.
Save Poetro/7971559 to your computer and use it in GitHub Desktop.

Már több mint negyed éve interjúztatok JavaScript fejlesztői állásra, és észrevettem, hogy a mi kérdéssorunkból mire tudják a legkevesebben a választ, illetve mire adnak rendszeresen hibás választ. Ezeket a kérdéseket és válaszokat próbáltam összegyűjteni, hátha mások tanulni fognak belőle.

Hogyan működik az öröklődés JavaScriptben?

JavaScriptben prototípusos (prototypal) öröklődés van, ami azt jelenti, hogy egy osztály a prototípusától örökli a tulajdonságait. A prototípusa pedig szintén örökölhet tulajdonságokat a saját prototípusától, így jön létre a prototípus lánc (prototype chain). A prototípus lánc azt jelenti, hogy amikor a objektum egy tulajdonságát kérdezzük le, akkor a JavaScript motor előbb megnézi, hogy az definiálva van-e magán az objektumon, majd annak prototípusán, majd a prototípus prototípusán stb. Ha megtalálja, akkor visszadja, ha nem, akkor undefined értéket ad vissza vagy ReferenceError hibát dob.

Milyen értéket kap egy változó alapértelmezetten?

undefined

Mi a különbség a null és az undefined között?

Az undefined azt jelenti hogy a változó még nem kapott értéket, vagy nem is lett definiálva. A null azt jelenti, hogy a változó létezik, és a fejlesztő szándékosan jelezni akarja, hogy a változónak nincsen értéke.

Hogyan adódnak át a paraméterek a függvénynek?

A primitív típusok (number, string, boolean, undefined, null) érték szerint, az objektumok (azaz minden más) pedig referencia szerint.

Hogyan működik az események propagálása (terjesztése)?

Az események terjesztésének két fázisa van (egyes elméletek szerint 3), lefutási sorrendben: az elfogási fázis (capture phase)[, célpont fázis (target phase)], és a buborékolás fázis (bubbling phase). A capture phase-ben az esemény a dokumentum tetejéről, külsejéről indul és jut el végül a célponthoz. A bubbling phase esetében pedig az esemény a célponttól elindul és fölfele végigfut az összes szülő elemen.

Milyen pozicionálások (position) léteznek CSS-ben, és hogyan működnek?

  • static: Az elem része a dokumentum folyamnak, nem számít pozicionáltnak.
  • relative: Az elem része a dokumentum folyamnak, helyzete relatív az eredetileg elfoglalt pozíciójához képest.
  • absolute: Az elem nem része a dokumentum folyamnak, helyzete relatív a legközelebbi pozicionált elem elem pozíciójához képest.
  • fixed: Az elem nem része a dokumentum folyamnak, helyzete relatív a nézetablakhoz (viewport) képest, nyomtatás esetén minden egyes lapon.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment