Autor | Zpráva | ||
---|---|---|---|
Richard Profil * |
#1 · Zasláno: 19. 7. 2013, 19:18:11
Ahojte, dnes som robil javascript test na pohovory a myslel som ze to bude tak akurat na odhalenie ci je clovek pokrocily, ale ani po testnuti mojich kolegov to nebolo na 100% ako som cakal tak to hadzem sem na kritiku, vyjadrite sa co si o tom myslite, su to len 4 otazky na 10 minut.
Ja som ocakaval ze pre cloveka ktory si hovori ze je v javascript-e pokrocily by to mal dat na 4/4. TEST - Javascript Majme nasledujúci kód v jazyku JavaScript: var a = {"a": "b"}; var b = {"a": "b"}; var c = a; var result = [a == b, a === b, a == c, a === c]; Po jeho vykonaní bude hodnota poľa result: 1. [true, true, true, true] 2. [true, false, true, false] 3. [false, false, true, true] 4. [false, true, false, true] 5. [false, false, false, false] Majme nasledujúci kód v jazyku JavaScript: function makeFunc() { var i = 0; function innerFunction() { i += 2; return i; } i += 5; return innerFunction; } var myFunc = makeFunc(); var result1 = myFunc(); var result2 = myFunc(); Po jeho vykonaní budú budú hodnoty premenných: 1. result1 = undefined, result2 = undefined 2. result1 = 7, result2 = 12 3. result1 = 2, result2 = 2 4. result1 = 7, result2 = 7 5. result1 = 7, result2 = 9 Majme nasledujúci kód v jazyku JavaScript: var a = 'set'; (function() { b = 'set'; } ()); function myFunc() { var c = 'set'; d = 'set'; } myFunc(); Po jeho vykonaní budú hodnoty a, b, c, d nasledovné: 1. 'set', 'set', 'set', set' 2. 'set', undefined, undefined, undefined 3. 'set', 'set', 'set', undefined 4. 'set', 'set', undefined, 'set' 5. undefined, undefined, undefined, undefined Majme nasledujúci kód v jayzku JavaScript: var MyClass = function () { this.method1 = function () {}; var method2 = function() {}; }; MyClass.method3 = function () {}; MyClass.prototype.method4 = function () {} var myObj = new MyClass(); Napíšte čísla metód ktoré sú prístupné z objektu myObj.: |
||
Chamurappi Profil |
#2 · Zasláno: 19. 7. 2013, 19:40:04
Reaguji na Richarda:
Myslím si, že je to férový test. Nejsou to žádné zákeřné chytáky, každá otázka zkoumá standardní pokročilou vědomost. Akorát u třetí otázky bych nesouhlasil s tím, že nejlepší možná odpověď je úplně správná, protože je rozdíl mezi proměnnou s hodnotou undefined a neexistující proměnnou.
|
||
Radek9 Profil |
#3 · Zasláno: 19. 7. 2013, 19:41:42
Richard:
3) Není definováno, v jaké scope se budou hodnoty ověřovat. Jestli v global, pak 'set', 'set', ReferenceError, 'set'
4) Trochu kostrbatě zapsáno, ale jinak je to v pohodě. |
||
Richard Profil * |
#4 · Zasláno: 19. 7. 2013, 20:16:02
[#2] Chamurappi
Diki za odpoved, tiez si hovorim ze to nie je zas tak zakerne. Totiz mal som hned chalana na pohovore, ktory ma v zivotopise "Javascript: expert" ... a z tychto otazok nedal ani jednu spravne, tak som si chcel overit ci vyzadujem normalne veci. Tu tretiu otazku este trochu prerobim, aby bolo jasne ktory scope myslim a pripadne tam hodim ten ReferenceError. V zasade si myslim ze clovek ktory by trochu experimentoval s platnostou premennych by vybral najlepsiu odpoved ... pripadne poznamku s ReferenceError by som samozrejme uznal, ale inak asi ten test teda necham :) [#3] Radek9 Dik za postrehy |
||
llook Profil |
#5 · Zasláno: 19. 7. 2013, 20:42:23
Někdo může za pokročilou znalost JS považovat to, že dokáže na stránku přilepit několik jQuery plug-inů. :-) Ale jestli si říká "expert", tak bych od něj dal ruce pryč ne proto, že neumí JS, ale hlavně proto, že nemá soudnost.
Já jsem uhádl 3 ze 4. Doteď jsem měl za to, že se ty operátory chovají stejně, jako v PHP, tak teď jsem zase o něco chytřejší (v PHP je toto true: (object) [ 'a' => 'b'] == (object) [ 'a' => 'b'] ).
Pokud někdo aspiruje na pozici "JavaScript programátor", tak by tohle všechno asi měl vědět. Pokud něco z toho neví, tak ale stále můžou existovat dobré důvody, proč se na tu práci i tak hodí. Pokud někdo rozumí programování obecně, má bohaté zkušenosti s jinými jazyky, ale s JS teprve začíná, tak se může během krátké doby stát velmi užitečným... |
||
Chamurappi Profil |
#6 · Zasláno: 19. 7. 2013, 20:46:52
Reaguji na llooka:
Jé, tebe jsem tu dlouho neviděl :-) Jsi tu jen na skok, nebo s námi budeš zase kvalitně zabíjet hodiny času? Reaguji na Richarda: „Totiz mal som hned chalana na pohovore, ktory ma v zivotopise "Javascript: expert"“ Někteří lidé mají dlouholeté zkušenosti s patláním, pak se považují za experty. Na mnoha pracovních pozicích jim to, co vědí, pak i stačí. |
||
llook Profil |
#7 · Zasláno: 19. 7. 2013, 21:04:06
Chamurappi:
A jo, poslední příspěvek mám předtím z roku 2008. :-) Mám rozečtený Konec prokrastinace, ale zatím se mi to moc nedaří aplikovat, tak uvidíme... |
||
Časová prodleva: 3 dny
|
|||
_es Profil |
Richard:
Po jeho vykonaní budú hodnoty a, b, c, d nasledovné: c “ chybu (Respektíve môže vyvolať, podľa toho, či v dokumente existuje aj iný JS kód a aké DOM elementy a v akom prehliadači). Aj pokus o nastavenie hodnoty neexistujúcej premennej môže v niektorých prehliadačoch v niektorých prípadoch vyvolať chybu („premenné“ b a d ): InnerHTML problém v IE8. Môže to ešte aj komplikovať „striktný“ režim: www.zdrojak.cz/clanky/co-prinasi-novy-ecmascript-5-dokonceni, msdn.microsoft.com/cs-cz/library/br230269%28v=vs.94%29.aspx, developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Functions_and_function_scope/Strict_mode. Otázka je teda nekorektná.
Napíšte čísla metód ktoré sú prístupné z objektu myObj.: myObj.method1() a myObj.method4() , funguje však aj myObj.constructor.method3() .
|
||
Časová prodleva: 11 let
|
0