404 - Page not found
Think this is wrong? Open an issue
diff --git a/_site/404.html b/_site/404.html deleted file mode 100644 index 629520c..0000000 --- a/_site/404.html +++ /dev/null @@ -1 +0,0 @@ -
Think this is wrong? Open an issue
This file contains a number of front-end interview questions that can be used when vetting potential candidates. It is by no means recommended to use every single question here on the same candidate (that would take hours). Choosing a few items from this list should help you vet the intended skills you require.
Note: Keep in mind that many of these questions are open-ended and could lead to interesting discussions that tell you more about the person’s capabilities than a straight answer would.
Saw something wrong? Want to add a question? suggest something? Check our contributing guidelines, open a pull-request or fill a bug.
It has since been active thanks to these incredibly wonderful people.
Looking to contribute? Check our Contributing guide to get started!
This project started in 2009 as a collaboration of @paul_irish @bentruyman @cowboy @ajpiano @SlexAxton @boazsender @miketaylr @vladikoff @gf3 @jon_neal @sambreed and @iansym.
A list of helpful front-end related questions you can use to interview potential candidates, test yourself or completely ignore. Read more about here. Better in your language? See one of our translations.
Since this project begun, thousands of questions were added by an amazing group of people, and translated to more than 30 different languages. Want to contribute? See our contribute guide. We have a Hall of Fame 👑.
Question: What is the value of foo?
var foo = 10 + '20';Question: What will be the output of the code below?
console.log(0.1 + 0.2 == 0.3);Question: How would you make this work?
add(2, 5); // 7add(2)(5); // 7Question: What value is returned from the following statement?
"i'm a lasagna hog".split("").reverse().join("");Question: What is the value of window.foo?
( window.foo || ( window.foo = "bar" ) );Question: What is the outcome of the two alerts below?
var foo = "Hello";(function() { var bar = " World"; alert(foo + bar);})();alert(foo + bar);Question: What is the value of foo.length?
var foo = [];foo.push(1);foo.push(2);Question: What is the value of foo.x?
var foo = {n: 1};var bar = foo;foo.x = foo = {n: 2};Question: What does the following code print?
console.log('one');setTimeout(function() { console.log('two');}, 0);Promise.resolve().then(function() { console.log('three');})console.log('four');Question: What is the difference between these four promises?
doSomething().then(function () { return doSomethingElse();});doSomething().then(function () { doSomethingElse();});doSomething().then(doSomethingElse());doSomething().then(doSomethingElse);@media property other than screen?* { box-sizing: border-box; } do? What are its advantages?display property and can you give a few examples of its use?translate() instead of absolute positioning, or vice-versa? And why?doctype do?data- attributes good for?cookie, sessionStorage and localStorage.<script>, <script async> and <script defer>.<link>s between <head></head> and JS <script>s just before </body>? Do you know any exceptions?srcset attribute in an image tag? Explain the process the browser uses when evaluating the content of this attribute.this works in JavaScriptfunction foo(){ }();.null, undefined or undeclared?forEach loop and a .map() loop and why you would pick one versus the other?function Person(){}, var person = Person(), and var person = new Person()?.call and .apply?Function.prototype.bind.== and ===?duplicate([1,2,3,4,5]); // [1,2,3,4,5,1,2,3,4,5]"use strict";? what are the advantages and disadvantages to using it?100 while outputting “fizz” at multiples of 3, “buzz” at multiples of 5 and “fizzbuzz” at multiples of 3 and 5load event? Does this event have disadvantages? Do you know any alternatives, and why would you use those?foo between function foo() {} and var foo = function() {}let, var or const?=> function syntax? How does this new syntax differ from other functions?spread syntax and how is it different from rest syntax?هذا الملف يحتوي على عدد من أسئلة مقابلة شخصية في تطوير واجهة الويب التي من الممكن ان تساعدك في فحص المرشحين المحتملين للوظيفة.
لا ينصح باستخدام كل الأسئلة هنا على مرشح واحد, فاختيار بعض من الأسئلة سيساعدك في تحديد من يمتلك المهارات المتوافقه مع متطلباتك.
ملاحظة: كثير من هذه الأسئلة ليس لها إجابات محددة مما قد يؤدي الى نقاش مثير للاهتمام , و يعرفك على قدرات الشخص أكثر مما تتوقع من اجابة محدده.
doctype؟application/xhtml+xml؟-data؟cookie, sessionStorage و localStorage.<script>, <script async> و <script defer>.<link> بين <head></head> و جافاسكربت <script> قبل <body/>؟{ ;box-sizing: border-box } * يفعل, وماهي ايجابياته؟()translate بدلا من absolute positioning او vice-versa؟ ولماذا.this تعمل في JavaScript.;(){ }{}function foo لا يعمل كـ IIFE؟{} ()function Person, ()var person = Person,و ()var person = new Person؟call.و apply.؟Function.prototype.bind.()document.write؟== و ===؟duplicate([1,2,3,4,5]); // [1,2,3,4,5,1,2,3,4,5];"use strict", وما هي إبجبايات و سلبيات استخدامه؟foo بين {} ()function foo و {} ()var foo = function.سؤال: ماهي قيمة foo؟
var foo = 10 + '20';سؤال: كيف يمكن جعل هذا الكود يعمل؟
add(2, 5); // 7add(2)(5); // 7سؤال: ماهي القيمة العائدة من الكود التالي؟
"i'm a lasagna hog".split("").reverse().join("");سؤال: ماهي قيمة window.foo؟
( window.foo || ( window.foo = "bar" ) );سؤال: ماهو ناتج التنبيهات التالية؟
var foo = "Hello";(function() { var bar = " World"; alert(foo + bar);})();alert(foo + bar);سؤال: ماهي قيمة foo.length؟
var foo = [];foo.push(1);foo.push(2);سؤال: ماهي قيمة foo.x؟
var foo = {n: 1};var bar = foo;foo.x = foo = {n: 2};سؤال: ماذا يطبع الكود التالي؟
console.log('one');setTimeout(function() { console.log('two');}, 0);console.log('three');بدأت هذه الوثيقة في عام 2009 بتعاون @paul_irish @bentruyman @cowboy @ajpiano @SlexAxton @boazsender @miketaylr @vladikoff @gf3 @jon_neal.
ومنذ ذلك الحين تلقى مساهمات من أكثر من 100 مطور.
Това репозитори съдържа въпроси от интервюта на front-end разработчици, които могат да бъдат използвани за отсяване на потенциални кандидати. Не препоръчваме използването на всеки въпрос за всеки кандидат (това би отнело часове). Избирането на няколко въпроса от списъка би могло да помогне да се проверят търсените умения у кандидатите.
Статията Baseline For Front-End Developers на Rebecca Murphey също е чудесен ресурс за четене преди провеждането на интервю.
Бележка: Имайте предвид, че много от тези въпроси могат да породят интересни дискусии и да ви помогнат по-добре да проверите познанията и начина на мислене на кандидата, отколкото ако получавате директен отговор.
Мнозинството от въпроси са взети от oksoclap измислени от Paul Irish (@paul_irish) и благодарение на:
doctype?application/xhtml+xml?data-?sessionStorage и localStorage.<script>, <script async> и <script defer>.<link> в елемента <head></head> и JS <script> преди затварящия таг </body>? Знаете ли за изключения?srcset атрибут в <img> таг? Обяснете процеса, през който минава браузърът, когато обработва съдържанието на този атрибут.* { box-sizing: border-box; }? Какви са предимствата му?display, за които можете да се сетите.this в JavaScript.function foo(){ }();.null, undefined или недекларирана?function Person(){}, var person = Person() и var person = new Person()?.call и .apply?Function.prototype.bind?document.write()?== и ===?duplicate([1,2,3,4,5]); // [1,2,3,4,5,1,2,3,4,5]"use strict";? Какви са предимствата и недостатъците на ползването му в кода?load събитието? Това събитие има ли недостатъци? Знаете ли алтернативи и защо бихте ги използвали?foo в примерите: function foo() {}; var foo = function() {}let, var и const?.end()?.get(), [], и .eq()?.bind(), .live(), и .delegate()?$ и $.fn? Или просто: Какво е $.fn?$(".foo div#bar:eq(0)")Expires, Date, Age и If-Modified-...modulo(12, 5) // 2Въпрос: Имплементирайте функция за намиране на остатък от деление която отговаря на горното условие (да връща 2 при аргументи 12 и 5)
"i'm a lasagna hog".split("").reverse().join("");Въпрос: Каква стойност ще върне горният израз?
Отговор: "goh angasal a m’i"
( window.foo || ( window.foo = "bar" ) );Въпрос: Каква е стойността на window.foo?
Отговор: “bar”, ако window.foo има стойност false, иначе стойността на window.foo)
var foo = "Hello"; (function() { var bar = " World"; alert(foo + bar); })(); alert(foo + bar);Въпрос: Какво ще изкарат двете alert функции от горния код?
Отговор: “Hello World” и ReferenceError: bar is not defined
var foo = [];foo.push(1);foo.push(2);Въпрос: Каква е стойността на foo.length?
Отговор: 2
ယခုဖိုင်တွင် Front-end developer အလုပ်အတွက် အလုပ်လျှောက်ထားသူများအား အင်တာဗျူးများပြုလုပ်ရာတွင် အထောက်အကူပြုနိုင်သည့် မေးခွန်းများပါဝင်ပါသည်။ အလုပ်လျှောက်ထားသူတစ်ဦးစီတိုင်းကို ရှိသမျှမေးခွန်းတိုင်းမေးရန် အကြံပြုခြင်းမဟုတ်ပါ။ (ဖြေရလွန်း၍ လျှာထွက်နိုင်ကိန်းရှိသည်။) မိမိခန့်အပ်လိုသောအလုပ်နှင့်သက်ဆိုင်သည့် အလုပ်တာဝန်၊ လိုအပ်ချက်များနှင့်သက်ဆိုင်သည့် မေးခွန်းများကိုသာရွေးချယ်ကာမေးရန် ရည်ရွယ်ပါသည်။
မှတ်ချက်။ ။ မေးခွန်းအများစုမှာ open-ended မေးခွန်းများြဖစ်ြပီး ဒဲ့ဒိုးအဖြေတစ်ခု အတိအကျရယ် မရှိချေ။ ထိုမေးခွန်းနှင့် ပါတ်သက်၍ ဆွေးနွေးစကားပြောဆိုရာမှ လျှောက်ထားသူ၏ အစွမ်းအဆကို ပိုမိုခန့်မှန်းနိုင်မည်ြဖစ်သည်။
doctype ဆိုတာဘာလဲ။ ဘယ်လိုအလုပ်လုပ်ပါသလဲ။application/xhtml+xml နှင့် ချပေးပါက မည်သည့်ပြဿနာများရှိသနည်း။data- attributes တွေသည် မည်သည့် ကိစ္စအတွက် ကောင်းသနည်း။cookie, sessionStorage နှင့် localStorage တို့၏ ကွာခြားချက်များကိုပြောပါ။<script>, <script async> နှင့် <script defer> တို့၏ ကွာခြားချက်များကို ပြောပါ။<link> tag များကို <head></head> အတွင်း၊ ဘာကြောင့် Javascript ၏ <script> tag များကို </body> မတိုင်ခင်ထည့်သည့်သည်ဟု ယေဘုယျအားဖြင့် အကြံပြုကြပါသလည်း။ ဘယ်လိုချွင်းချက်များ ရှိပါလဲ။* { box-sizing: border-box; } က ဘာလုပ်တာလည်း။ အဲ့ဒါရဲ့ အားသာချက်တွေက ဘာလဲ။display property ရဲ့ value တွေထဲက မှတ်မိသမျှပြောပြပါ။inline နှင့် inline-block ၏ ကွာခြားချက်များကို ပြောပါ။relative, fixed, absolute နှင့် static position တို့၏ ကွာခြားချက်များကို ပြောပါ။translate() ကို ဘယ်လိုအချိန်မျိုးမှာ သုံးနိုင်ပါသလဲ။ အဲ့ဒါမဟုတ်ပြောင်းပြန် ဆိုရင်ရော။ ဘာကြောင့်လဲ။this က Javascript မှာ ဘယ်လိုအလုပ်လုပ်ပါသလဲ။function foo(){}();; အလုပ်မလုပ်တာလည်း။null, undefined or undeclared value များသည် ဘယ်လိုကွာခြားပါသလဲ။function Person(){}, var person = Person(), နှင့် var person = new Person() ဆိုတဲ့ သုံးခုက ဘယ်လိုကွာပါသလဲ။.call နှင့် .apply က ဘာကွာပါသလဲ။Function.prototype.bind အကြောင်းရှင်းပါ။document.write() ကို ဘယ်လိုအချိန်မှာ သုံးမှာလဲ။== နှင့် === ကွာခြားပုံကိုပြောပါ။duplicate([1,2,3,4,5]); // [1,2,3,4,5,1,2,3,4,5]"use strict"; က ဘာလဲ။ အားနည်းချက် အားသာချက်များကို ရှင်းပါ။100 အထိ loop ပါတ်ကာ 3 နှင့် စားလုိ့ပြတ်က “fizz” လို့ထုတ်ပြီး , 5 နှင့်စားလို့ပြတ်က **“buzz”**လို့ထုတ်ပါ။ 3 နှင့် 5 နှစ်ခုလုံးနှင့်စားလို့ပြတ်က “fizzbuzz” လို့ထုတ်ပါ။load event ကို ဘာကြောင့်သုံးပါသလဲ။ အဲ့ဒီ့ event မှာ အားနည်းချက်များရှိပါသလား။ တခြားနည်းလမ်းတွေသိလား၊ ဘာလို့ အြခားနည်းလမ်းတွေသုံးမှာလဲ။function foo() {} နှင့် var foo = function() {} မှာ foo ရဲ့ကွာခြားချက်ကိုပြောပါ။Question: foo ၏ value ကိုပြောပါ။
var foo = 10 + '20';Question: အောက်ပါ code ကို ဘယ်လိုအလုပ်လုပ်အောင်လုပ်မည်နည်း။
add(2, 5); // 7add(2)(5); // 7Question: အောက်ပါ statement မှ ဘာကို return ပြန်မည်နည်း။
"i'm a lasagna hog".split("").reverse().join("");Question: window.foo ၏ value ကို ပြောပါ။
( window.foo || ( window.foo = "bar" ) );Question: အောက်ပါ alert နှစ်ခုက ဘာပြမည်နည်း။
var foo = "Hello";(function() { var bar = " World"; alert(foo + bar);})();alert(foo + bar);Question: foo.length ၏ value ကိုပြောပါ။
var foo = [];foo.push(1);foo.push(2);Question: foo.x ၏ value ကိုပြောပါ။?
var foo = {n: 1};var bar = foo;foo.x = foo = {n: 2};Question: အောက်ပါ ကုဒ်က ဘာ print ထုတ်မည်နည်း။?
console.log('one');setTimeout(function() { console.log('two');}, 0);console.log('three');This document started in 2009 as a collaboration of @paul_irish @bentruyman @cowboy @ajpiano @SlexAxton @boazsender @miketaylr @vladikoff @gf3 @jon_neal @sambreed and @iansym.
It has since received contributions from over 100 developers.
Burmese translation provided by @mmhan.
譯注:此翻譯版,主要給不能流利的讀英文的人看,相關專有名詞還是保留原文,翻譯不好地方請協助 Pull request。
此文件包含了一些前端開發的面試問題,來審查一個有潛力的面試者。這並不是建議你對同一個面試者問上所有的問 (那會花費好幾小時)。從列表中挑幾個題目,應該就夠幫助你審查面試者是否擁有你需要的技能。
注意: 請記住一點,很多問題都是隨情況而變化,能引發很多有趣的討論,比直接的標準答案更能讓你瞭解此人的能力。
doctype 做什麼用的?application/xhtml+xml 會有問題嗎?data- 屬性的好處在哪?cookies, sessionStorage 和 localStorage 的不同?<script>, <script async> & <script defer>。<link> 放在 <head></head> 之間,與將 JS <script> 放在 </body> 之前是個較好的主意?有什麼例外情形嗎?* { box-sizing: border-box; }?並且說明使用它的好處?translate() 代替 aboslute positioning,或者用 absolute positioning 代替 translate?為什麼要這樣?this 如何在 JavaScript 中運作。function foo(){ }();. (Immediately Invoked Function Expression,立即函式)null、undefined和 undeclared變數之間有什麼差異?function Person(){}、var person = Person()和var person = new Person()之間有何不同?.call 和 .apply有何不同?Function.prototype.bind?document.write()?document.write() 雖然這樣用會令人皺眉== 和 === 有什麼不同?duplicate([1,2,3,4,5]); // [1,2,3,4,5,1,2,3,4,5]"use strict";? 使用他的優點和缺點是什麼?100 的迴圈,當數字是 3 的倍數時輸出 “fizz”,當數字是 5 的倍數時輸出 "buzz",當數字同時是 3 與 5 的倍數時輸出 “fizzbuzz”。load 事件?有什麼缺點嗎?有其他選擇嗎?又為何選擇它?問題: foo 的值是什麼?
var foo = 10 + '20';問題:實作符合下面的函式
add(2, 5); // 7add(2)(5); // 7問題: 下面的 statement(陳述式) 會回傳什麼?
"i'm a lasagna hog".split("").reverse().join("");問題: window.foo 的值是什麼?
( window.foo || ( window.foo = "bar" ) );問題: 下面的兩個 alerts 的結果會是什麼?
var foo = "Hello";(function() { var bar = " World"; alert(foo + bar);})();alert(foo + bar);問題: 下面 foo.length 的值是什麼?
var foo = [];foo.push(1);foo.push(2);問題:下面這段會印出什麼?
console.log('one');setTimeout(function() { console.log('two');}, 0);console.log('three');此文件是由 @paul_irish @bentruyman @cowboy @ajpiano @SlexAxton @boazsender @miketaylr @vladikoff @gf3 @jon_neal @sambreed and @iansym 於 2009 年共同發起。
目前已經超過 100 開發者 參與此專案.
本文包含了一些用于考查候选者的前端面试问题。不建议对单个候选者问及每个问题 (那需要好几个小时)。只要从列表里挑选一些,就能帮助你考查候选者是否具备所需要的技能。
备注: 这些问题中很多都是开放性的,可以引发有趣的讨论。这比直接的答案更能体现此人的能力。
doctype(文档类型) 的作用是什么?data- 属性的好处是什么?cookies、sessionStorage 和 localStorage 的区别。<script>、<script async> 和 <script defer> 的区别。<link> 放置在 <head></head> 之间,而将 JS <script> 放置在 </body> 之前?你知道有哪些例外吗?z-index和叠加上下文是如何形成的。* { box-sizing: border-box; } 的作用, 并且说明使用它有什么好处?translate() 而非 absolute positioning,或反之的理由?为什么?this 是如何工作的。function foo(){ }();.null,undefined 或 undeclared?function Person(){}、var person = Person()、var person = new Person()?.call 和 .apply 的区别是什么?Function.prototype.bind?document.write()?== 和 === 有什么不同?[1,2,3,4,5].duplicator(); // [1,2,3,4,5,1,2,3,4,5]"use strict"; ? 使用它的好处和坏处分别是什么?100 的 for loop 循环,在能被 3 整除时输出 “fizz”,在能被 5 整除时输出 “buzz”,在能同时被 3 和 5 整除时输出 “fizzbuzz”。load 之类的事件 (event)?此事件有缺点吗?你是否知道其他替代品,以及为何使用它们?function foo() {} 与 var foo = function() {} 用法的区别问题:foo的值是什么?
var foo = 10 + '20';问题:如何实现以下函数?
add(2, 5); // 7add(2)(5); // 7问题:下面的语句的返回值是什么?
"i'm a lasagna hog".split("").reverse().join("");问题:window.foo的值是什么?
( window.foo || ( window.foo = "bar" ) );问题:下面两个 alert 的结果是什么?
var foo = "Hello";(function() { var bar = " World"; alert(foo + bar);})();alert(foo + bar);问题:foo.length的值是什么?
var foo = [];foo.push(1);foo.push(2);问题:foo.x的值是什么?
var foo = {n: 1};var bar = foo;foo.x = foo = {n: 2};问题:下面代码的输出是什么?
console.log('one');setTimeout(function() { console.log('two');}, 0);console.log('three');本文档始于 2009 年,是以下作者的合作成果:@paul_irish @bentruyman @cowboy @ajpiano @SlexAxton @boazsender @miketaylr @vladikoff @gf3 @jon_neal @sambreed 和 @iansym。
时至今日,文档已经融入超过 100 位开发者的贡献。
@version 2.0.0
Ovaj repozitorij sadrži brojna pitanja za intervju iz područja front-end-a koja možete koristiti u procjeni potencijalnih kandidata. Nikako se ne preporuča da upotrijebite svako ovdje navedeno pitanje za jednog kandidata (to bi trajalo satima). Odabir nekoliko ciljanih pitanja s ove liste bi Vam trebao pomoći u odabiru.
Rebecca Murphey Baseline For Front-End Developers je prilično dobro štivo za pročitati prije samog razgovora.
Napomena: Imajte na umu da su mnoga ovdje navedena pitanja otvorenog tipa i mogla bi voditi u zanimljive rasprave koje govore više o sposobnostima osobe nego pitanja sa direktnim odgovorima.
Većina pitanja je preuzeta sa oksoclap tj. rasprave koju je u originalu pokrenuo Paul Irish (@paul_irish) i kojoj su pridonijele sljedeće osobe:
korištenje :retab! naredbedoctype?application/xhtml+xml?data- atributi?thisundefined i undeclared varijable?function Person(){} var person = Person() var person = new Person().call i .apply?Function.prototype.binddocument.write()?document.write() premda se to zamjera.== i ===?[1,2,3,4,5].duplicate(); // [1,2,3,4,5,1,2,3,4,5]"use strict";? Koje su mane, koje prednosti?~~3.14Pitanje: Koja je povratna vrijednost gornjeg izraza?
Odgovor: 3
"Ovo je proba".split("").reverse().join("");Pitanje: Koja je povratna vrijednost gornjeg izraza?
Odgovor: "aborp ej ovO"
( window.foo || ( window.foo = "bar" ) );Pitanje: Koju vrijednost ima window.foo?
Odgovor: "bar"
Samo ako window.foo nije istinit u suprotnom će zadržati vrijednost.
var foo = "Hello"; (function() { var bar = " World"; alert(foo + bar); })(); alert(foo + bar);Pitanje: Kako će izgledati obavijesti iz gornjeg primjera?
Odgovor: “Hello World” nakon toga ReferenceError: bar is not defined
var foo = [];foo.push(1);foo.push(2);Pitanje: Koja je vrijednost za foo.length?
**Odgovor: 2
var foo = {};foo.bar = 'hello';Pitanje: Koja je vrijednost za foo.length?
**Odgovor: undefined
.end() ?,[], i.eq()`?,.live(), i.delegate()`?$ i $.fn? Ili samo što je $.fn.$(".foo div#bar:eq(0)")Tento repozitář obsahuje řadu otázek, které můžete směle položit u pohovoru kandidátovi na pozici front-end vývojář a ověřit si tak jeho znalosti v tomto oboru. Není zamýšleno položit všechny tyto otázky (jejich korektní zodpovězení by trvalo hodiny), leč pouze určitou část vyhovující vašim potřebám.
Za přečtení stojí také:
Poznámka: Mějte na paměti, že tyto otázky mají vést spíše k diskusi na dané téma a prozradit tak něco více o schopnostech daného vývojáře než aby byly zodpovězeny jedním slovem nebo větou.
Většina otázek byla převzata z oksoclap původně vytvořeného Paulem Irishem (@paul_irish) a následně doplněna těmito osobami:
issue :retab! commanddoctype ?application/xhtml+xml?data-?this v JavaScriptu.function foo(){ }();.null, nedefinovaná nebo nedeklarovaná?function Person(){} var person = Person() var person = new Person().call a .apply?undefined and null?Function.prototype.bind.document.write()?== a ===?[1,2,3,4,5].duplicate(); // [1,2,3,4,5,1,2,3,4,5]"use strict";? Jaké jsou výhody a nevýhody použití?.end()?.get(), [] a .eq()?.bind(), .live() a .delegate()?$ a $.fn? Nebo jenom, co je $.fn?$(".foo div#bar:eq(0)")~~3.14Otázka: Jakou hodnotu vrátí uvedený výraz?
Odpověď: 3
"i'm a lasagna hog".split("").reverse().join("");Otázka: Jakou hodnotu vrátí uvedený výraz?
Odpověď: "goh angasal a m’i"
( window.foo || ( window.foo = "bar" ) );Otázka: Jakou hodnotu má window.foo?
Odpověď: "bar"
pouze pokud window.foo bylo false, jinak vrátí svojí hodnotu.
var foo = "Hello"; (function() { var bar = " World"; alert(foo + bar); })(); alert(foo + bar);Otázka: Co zobrazí uvedené dva alerty?
Odpověď: “Hello World” a ReferenceError: bar is not defined
var foo = [];foo.push(1);foo.push(2);Otázka: Jaká je hodnota foo.length?
Odpověď: 2
var foo = {};foo.bar = 'hello';Otázka: Jaká je hodnota foo.length?
Odpověď: undefined
@version 1.0
Bemærk: Dette arkiv indeholder et udvalg af spørgsmål, der kan bruges til samtale til stillingen som front-end udvikler. Det kan på ingen måde anbefales at bruge hver eneste spørgsmål på samme kandidat da det ville tage flere timer.
Husk på, at mange af disse spørgsmål er åbne og kan føre til interessante diskussioner, der fortæller dig mere om personens evner end et klart svar ville.
####Originale bidragydere
Bemærk: Størstedelen af spørgsmålene blev plukket fra en tråd skabt og bidraget af følgende personer:
doctype gøre, og hvor mange kan du nævne?standards mode og quirks mode?application/xhtml+xml?data- attributter godt for?undefined og undeclared variabler?function Person(){} var person = Person() var person = new Person().call og .apply?Function.prototype.bind?document.write()?document.write() selvom dets anvendelse er ildeset.feature detection, feature inference, og brug af UA string== og ===?[1,2,3,4,5].duplicator(); // [1,2,3,4,5,1,2,3,4,5]"use strict";? hvad er fordelene og ulemperne ved at bruge det?~~3.14Spørgsmål: Hvilken værdi er returneret fra ovenstående?
Svar: 3
"i'm a lasagna hog".split("").reverse().join("");Spørgsmål: Hvilken værdi er returneret fra ovenstående?
Svar: "goh angasal a m’i"
( window.foo || ( window.foo = "bar" ) );Spørgsmål: Hvad er værdien af window.foo?
Svar: "bar"
Hvis window.foo er falsk ellers vil det bevare sin værdi.
var foo = "Hello"; (function() { var bar = " World"; alert(foo + bar); })(); alert(foo + bar);Spørgsmål: Hvad er resultatet af de to ovennævnte alerts?
** Svar: “Hello World” & ReferenceError: bar er ikke defineret **
var foo = [];foo.push(1);foo.push(2);Spørgsmål: Hvad er værdien af foo.length?
**Svar: 2
var foo = {};foo.bar = 'hello';Spørgsmål: Hvad er værdien af foo.length?
**Svar: undefined
foo = foo||barSpørgsmål: Hvad betyder?
**Svar: if(!foo) foo = bar
foo>>1Spørgsmål: Hvad betyder?
**Svar: Math.floor(foo/2)
foo|0foo+.5|0Spørgsmål: Hvad betyder?
**Svar: parseInt(foo) & Math.round(foo)
function foo(bar1, bar2, bar3){}Spørgsmål: Hvordan får man antallet af parametre?
**Svar: foo.length //dette eksempel er 3
.end() gøre?.get(), [], og .eq()?.bind(), .live(), og .delegate()?$ og $.fn? Eller hvad er $.fn.$(".foo div#bar:eq(0)")delegate() og live()?@version 2.0.0
Deze repo bevat een aantal front-end interview vragen die je kunnen helpen om ervaren kandidaten te vinden. Het is uiteraard niet aangeraden om elke vraag aan een sollicitant te stellen (dat zou ook uren in beslag nemen). Maar als je er een paar gebruikt is het mogelijk om het gewenste skillniveau te vinden dat je zoekt.
Rebecca Murphey’s Baseline For Front-End Developers is ook een geweldige bron om je in te lezen voordat je aan een interview begint.
Let op: Houd er rekening mee dat deze vragen meestal een open einde hebben en dat zou kunnen leiden tot interessante discussies die je meer over de persoon zelf kan vertellen dan een standaard antwoord.
####Originele Bijdragers
De meerderheid van deze vragen is geplukt uit een oksoclap thread origineel gemaakt door Paul Irish (@paul_irish) en aan bijgedragen door de volgende individuen:
issue :retab! commanddoctype?application/xhtml+xml?data- attributen goed voor?this werkt in JavaScriptundefined en undeclared variabelen?function Person(){} var person = Person() var person = new Person().call en .apply?Function.prototype.bind?document.write() gebruiken?document.write() ookal wordt dit meestal afgekeurd== en ===?[1,2,3,4,5].duplicate(); // [1,2,3,4,5,1,2,3,4,5]"use strict";? Wat zijn de voor- en nadelen om dit te gebruiken?~~3.14Vraag: Welke waarde wordt terug gegeven bij de bovenstaande code?
Antwoord: 3
"ik hou van lasagna".split("").reverse().join("");Vraag: Welke waarde wordt terug gegeven bij de bovenstaande code?
Antwoord: "angasal nav uoh ki"
( window.foo || ( window.foo = "bar" ) );Vraag: What is the value of window.foo?
Antwoord: "bar"
Alleen als window.foo falsy was, anders leverde het zijn waarde op.
var foo = "Hallo"; (function() { var bar = " Wereld"; alert(foo + bar); })(); alert(foo + bar);Vraag: Wat is de uitkomst van de twee alerts?
Antwoord: “Hallo Wereld” & ReferenceError: bar is not defined
var foo = [];foo.push(1);foo.push(2);Vraag: Wat is de waarde van foo.length?
**Antwoord: 2
var foo = {};foo.bar = 'hello';Vraag: Wat is de waarde van foo.length?
**Antwoord: undefined
.end()?.get(), [], en .eq()?.bind(), .live(), en .delegate()?$ en $.fn? Of sowieso, wat is $.fn.$(".foo div#bar:eq(0)")این فایل شامل چندین سوال مربوط به مصاحبهی فرانت-اند هست که ازشون میشه در زمان بررسی داوطلبهای بالقوه استفاده کرد. به هیچ وجه پیشنهاد نمیشه که تمام سوالات اینجا رو از یک داوطلب بپرسین (چون چند ساعت طول میکشه). انتخاب چند مورد از این لیست باید بهتون در بررسی تواناییهایی که نیاز دارید کمک کنه.
توجه: در نظر داشته باشید که ته خیلی از این سوالات باز هستن و ممکنه به یک بحث جذاب ختم بشن که بیشتر از یک جواب ساده به شما در مورد تواناییهای شخص مورد نظر اطلاعات میده.
doctype چیکار میکنه؟application/xhtml+xml هست؟data- به چه دردی میخورن؟<script>، <script async> و <script defer> رو شرح بده.<link>های سیاساس رو داخل <head></head> و <script>های جیاس رو قبل از </body> قرار داد؟ هیچ استثنایی میشناسی؟* { box-sizing: border-box; } چیکار میکنه؟ فوایدش چیه؟translate() به جای جاگذاری ابسولوت یا برعکس استفاده کنی؟ و چرا؟this توی جاوااسکریپت چطوری کار میکنه.function foo(){ }();.null، undefined یا اعلام نشده هست چیه؟function Person(){}، var person = Person()، و var person = new Person()؟.call و .apply چیه؟Function.prototype.bind رو توضیح بده.document.write() استفاده میکنی؟== و === چیه؟duplicate([1,2,3,4,5]); // [1,2,3,4,5,1,2,3,4,5]"use strict"; چیه؟ مزایا و معایب استفاده ازش چیه؟100 تکرار بشه در حالی که برای مضارب 3 "fizz"، برای مضارب 5 "buzz" و برای مضارب 3 و 5 "fizzbuzz" رو خروجی بده.load استفاده میکنی؟ این ایونت معایبی هم داره؟ جایگزینی میشناسی، و چرا از اونها استفاده میکنی؟foo توی function foo() {} و var foo = function() {} رو توضیح بده.سوال: مقدار foo چیست؟
var foo = 10 + '20';سوال: چیکار میکنی تا این کار کنه؟
add(2, 5); // 7add(2)(5); // 7سوال: مقدار برگشته از عبارت زیر چیست؟
"i'm a lasagna hog".split("").reverse().join("");سوال: مقدار window.foo چیست؟
( window.foo || ( window.foo = "bar" ) );سوال: خروجی دو آلرت زیر چیست؟
var foo = "Hello";(function() { var bar = " World"; alert(foo + bar);})();alert(foo + bar);سوال: مقدار foo.length چیست؟
var foo = [];foo.push(1);foo.push(2);سوال: مقدار foo.x چیست؟
var foo = {n: 1};var bar = foo;foo.x = foo = {n: 2};سوال: کد زیر چه چیزی رو پرینت میکند؟
console.log('one');setTimeout(function() { console.log('two');}, 0);console.log('three');این نوشته با همکاری @paul_irish @bentruyman @cowboy @ajpiano @SlexAxton @boazsender @miketaylr @vladikoff @gf3 @jon_neal @sambreed و @iansym از سال ۲۰۰۹ آغاز شده است.
از آن موقع تا کنون بیش از ۱۰۰ دولوپر در آن مشارکت کردهاند.
این سند توسط @JavidIzadfar به فارسی برگردانده شده است.
Cette liste contient un certain nombre de questions que vous pouvez poser lors d’un entretien d’embauche pour un développeur Front-End. Il n’est en aucun cas recommandé de poser toutes ces questions à un candidat (ça prendrait des heures). Choisissez en quelques-unes liées au profil que vous rechercher afin de vérifier les compétences dont vous avez besoin.
Note: Gardez en tête que la plupart de ces questions sont ouvertes et qu’elles peuvent mener à des discussions intéressantes, qui vous en apprendront plus sur les capacités de la personne.
doctype ?standard et quirks ?application/xhtml+xml ?data- servent-ils ?cookie, sessionStorage, et localStorage.<script>, <script async> et <script defer>.<link> à l’intérieur de <head></head> et les <script> juste avant </body>? Connaissez-vous des exceptions ?srcset dans une balise image ? Expliquez le processus utilisé par le navigateur lors de l’évaluation du contenu de cet attribut.z-index et comment le contexte d’empilement se forme ?* { box-sizing: border-box; } fait ? Quels sont ses désavantages ?display.inline et inline-block ?relative, fixed, absolute et static comme position ?flexbox ?translate() plutôt que position: absolute ou vice-versa ? Et pourquoi ?this en Javascript.function foo(){ }();.null, undefined et non déclarée ?forEach et la boucle .map() et pourquoi choisiriez-vous l’une et pas l’autre ?function Person() {}, var person = Person() et var person = new Person() ?.call et .apply ?Function.prototype.bind ?document.write() ?== et === ?[1,2,3,4,5].duplicator(); // [1,2,3,4,5,1,2,3,4,5]"use strict";? Quels sont les avantages et désavantages de son utilisation ?for qui se répète 100 fois et affichez “fizz” aux multiples de 3, "buzz" aux multiples de 5 et “fizzbuzz” aux multiples de 3 et 5.load ? Est-ce que cet évènement a des avantages ? Connaissez-vous des alternatives, et pourquoi les utiliseriez-vous ?foo entre foo() {} et var foo = function() {}let, var ou const ?Expires, Date, Age et If-Modified-…Cache-ControlTransfer-EncodingETagX-Frame-OptionsQuelle est la valeur de foo ?
var foo = 10 + '20';Comment feriez-vous marcher ceci ?
add(2, 5); // 7add(2)(5); // 7Que retourne ce code ?
"je suis un bouffeur de lasagne".split("").reverse().join("");Que retourne window.foo ?
( window.foo || ( window.foo = "bar" ) );Qu’affichent les deux alertes ci-dessous ?
var foo = "Hello";(function() { var bar = " World"; alert(foo + bar);})();alert(foo + bar);Quelle est la valeur de foo.length ?
var foo = [];foo.push(1);foo.push(2);Ce document a démarré avec la collaboration de @paul_irish @bentruyman @cowboy @ajpiano @SlexAxton @boazsender @miketaylr @vladikoff @gf3 @jon_neal @sambreed et @iansym.
Il a depuis reçu des contributions de plus de 100 développeurs.
@version 2.0.0
Dieses Repo enthält einige Fragen, die zur Einschätzung von geeigneten Frontend-Entwicklern innerhalb eines Bewerbungsgesprächs verwendet werden können. Es ist auf keinen Fall ratsam, einem Bewerber jede einzelne Frage zu stellen (das würde Stunden dauern). Es mag hilfreich sein, eine handvoll passender Fragen aus dieser Liste auszuwählen, um die Fähigkeiten abzuklopfen, die für den Job wichtig sind.
Rebecca Murphey’s Baseline For Front-End Developers (Englisch) ist ebenso eine nützliche Quelle zur Vorbereitung auf ein Bewerbungsgespräch.
Anmerkung: Beachte bitte, dass viele dieser Fragen so offen gehalten sind, dass sie interessante Diskussionen auslösen können, in deren Verlauf du viel mehr über die Fähigkeiten eines Bewerbers erfahren kannst, als in kurzen, direkten Antworten.
Ein Großteil der Fragen wurden aus einer Diskussion bei oksoclap entnommen, die von Paul Irish (@paul_irish) angestoßen wurde, und an der später folgende Personen beteiligt waren:
issue :retab! commanddoctype und wie viele von ihnen kannst du benennen?application/xhtml+xml ausgeliefert werden?data--Attribute nützlich?this in JavaScript funktioniert.undefined und undeclared Variablen?function Person(){} var person = Person() var person = new Person().call und .apply?Function.prototype.bind.document.write()?document.write(), obwohl es verpönt ist.== und ===?[1,2,3,4,5].duplicate(); // [1,2,3,4,5,1,2,3,4,5]"use strict";? Was sind die Vor- und Nachteile bei der Verwendung?~~3.14Frage: Welcher Wert wird zurückgegeben?
Antwort: 3
"Draußen nur Kännchen".split("").reverse().join("");Frage: Welcher Wert wird zurückgegeben?
Antwort: "nehcnnäK run neßuarD"
( window.foo || ( window.foo = "bar" ) );Frage: Welchen Wert hat window.foo?
Antwort: "bar"
nur wenn window.foo false war, andernfalls behält es seinen Wert.
var foo = "Hello"; (function() { var bar = " World"; alert(foo + bar); })(); alert(foo + bar);Frage: Was ist das Ergebnis der beiden alerts oben?
Antwort: “Hello World” & ReferenceError: bar is not defined
var foo = [];foo.push(1);foo.push(2);Frage: Welchen Wert hat foo.length?
**Antwort: 2
var foo = {};foo.bar = 'hello';Frage: Welchen Wert hat foo.length?
**Antwort: undefined
.end()?.get(), [] und .eq()?.bind(), .live(), und .delegate()?$ und $.fn? Was ist überhaupt $.fn?$(".foo div#bar:eq(0)")Αυτό το αποθετήριο (repo) περιέχει μια σειρά από front-end ερωτήσεις συνέντευξης που μπορούν να χρησιμοποιηθούν κατά την εξέταση πιθανών υποψηφίων. Σε καμία περίπτωση δεν προτείνεται να θέσετε όλα τα ερωτήματα που βρίσκονται εδώ στον ίδιο υποψήφιο (αυτό θα έπαιρνε ώρες). Επιλέγοντας όμως μερικές από αυτές, θα μπορέσετε να επιλέξετε τον υποψήφιο με τις κατάλληλες για σας δεξιότητες.
Επίσης, πριν προχωρήσετε στις συνεντεύξεις, θα ήταν εξαιρετικά χρήσιμο να διαβάσετε το άρθρο της Rebecca Murphey “Baseline For Front-End Developers”.
Σημείωση: Λάβετε υπόψη ότι πολλές από αυτές τις ερωτήσεις είναι ελευθέρου θέματος και μπορεί να οδηγήσουν σε ενδιαφέρουσες συζητήσεις που θα σας πουν πολλά περισσότερα πράγματα σχετικά με τις δυνατότητες του υποψήφιου από μια απλή απάντηση.
Οι περισσότερες ερωτήσεις προέκυψαν από ένα oksoclap thread που δημιουργήθηκε αρχικά από τον Paul Irish (@paul_irish) και στο οποίο συνείσφεραν τα παρακάτω άτομα:
issue :retab! commanddoctype?application/xhtml+xml;data- attributes;GET και POST;* { box-sizing: border-box; }? Ποια είναι τα πλεονεκτήματά του;this στην JavaScriptfunction foo(){ }();.null, undefined και undeclared;function Person(){}, var person = Person(), και var person = new Person();.call and .apply;Function.prototype.bind;document.write();document.write () αν και η χρήση του είναι παρακινδυνευμένη== and ===;[1,2,3,4,5].duplicate(); // [1,2,3,4,5,1,2,3,4,5]"use strict";; Ποια είναι τα πλεονεκτήματα και τα μειονεκτήματα στην χρήση του;.end();.get(), [], και .eq();.bind(), .live(), και .delegate()?$ and $.fn; Η απλά τι είναι $.fn.$(".foo div#bar:eq(0)")modulo(12, 5) // 2Ερώτηση: Υλοποιήστε μια modulo function που ικανοποιεί το παραπάνω
"i'm a lasagna hog".split("").reverse().join("");Ερώτηση: Τι τιμή επιστρέφει από την παραπάνω δήλωση;
Απάντηση: "goh angasal a m’i"
( window.foo || ( window.foo = "bar" ) );Ερώτηση: Ποια είναι η τιμή του window.foo?
Απάντηση: “bar” (μόνο αν το window.foo ήταν falsey αλλιώς θα διατηρούσε την τιμή)
var foo = "Hello"; (function() { var bar = " World"; alert(foo + bar); })(); alert(foo + bar);Ερώτηση: Ποιο είναι το αποτέλεσμα των δύο παραπάνω alerts?
Απάντηση: “Hello World” & ReferenceError: bar is not defined
var foo = [];foo.push(1);foo.push(2);Ερώτηση: Ποια είναι η τιμή του foo.length?
Απάντηση: 2
המסמך כולל מספר שאלות המופיעות בראיונות עבודה בנושא צד-לקוח היכולות לסייע להעריך את הידע של מועמדים פוטנציאליים. אין צורך להשתמש בכל אחת מהשאלות הנ״ל על מועמד אחד מסוים (הדבר יימשך שעות). בחירת מספר שאלות מסוימות מהרשימה יאפשר למראיין להעריך את הכישורים הנדרשים מהמועמד.
<script>, <script async>, ו"<script defer>".<link> בין תגיות <head></head> וקוד JS בדיוק לפני התגית <body/>? האם ישנם מקרים יוצאי דופן?{ ;box-sizing: border-box } *? מה יתרונותיו?function foo(){ }();
- function Person(){}
- var person = Person()
- var person = new Person()
- duplicate([1,2,3,4,5]); // [1,2,3,4,5,1,2,3,4,5]
- function foo() {};
- var foo = function() {};
- מהו הערך של foo?
- var foo = 10 + '20'; -
מה יהיה ה-output של הקוד הבא?
- console.log(0.1 + 0.2 == 0.3); -
כיצד תגרום/תגרמי לקוד הבא לעבוד?
- add(2, 5); // 7 - add(2)(5); // 7 -
מה יהיה הערך המוחזר מהקוד הבא:
- "i'm a lasagna hog".split("").reverse().join("");
- מה הערך של window.foo?
- ( window.foo || ( window.foo = "bar" ) ); -
מה תהיה התוצאה של שתי הודעות ה-alert המופיעות למטה?
- var foo = "Hello";
- (function() {
- var bar = " World";
- alert(foo + bar);
- })();
- alert(foo + bar);
- מהו הערך של foo.length?
- var foo = []; - foo.push(1); - foo.push(2); -
מהו הערך של foo.x?
- var foo = {n: 1};
- var bar = foo;
- foo.x = foo = {n: 2};
- מה יעשה הקוד הבא?
- console.log('one');
- setTimeout(function() {
- console.log('two');
- }, 0);
- console.log('three');
- מה ההבדל בין ארבע ה-promises הבאות?
- doSomething().then(function () {
- return doSomethingElse();
- });
-doSomething().then(function () {
- doSomethingElse();
-});
-
-doSomething().then(doSomethingElse());
-
-doSomething().then(doSomethingElse);
-
- פרויקט זה החל ב-2009 כשיתוף פעולה של @paul_irish @bentruyman @cowboy @ajpiano @SlexAxton @boazsender @miketaylr @vladikoff @gf3 @jon_neal.
הפרויקט פעיל מאז בזכות תמיכתם של אנשים רבים ונהדרים.
Ebben a gyűjteményben összeválogattuk a legjobb front-end fejlesztő interjú kérdéseket. Ellenben nem tanácsoljuk az összes kérdés egyidejű feltevését, hiszen ez órákat venne igénybe de egy válogatott kérdéssorral megkönnyíthetjük a potenciális jelentkezők szelektálását.
Rebecca Murphey, Baseline For Front-End Developers cikke is hasznos alapja lehet egy interjúnak.
Megjegyzés: Ne feledd, hogy a kérdések többsége érdekes beszélgetésé alakulhat, ami többet elárulhat az emberről mintha csak egyszerű válaszokat adna.
A kérdések többsége egy oksoclap beszélgetés alapján készült, amit Paul Irish (@paul_irish) kezdeményezett az alábbi közreműködőkkel:
issue :retab! command####[⬆] HTML kérdések:
doctype feladata és hány fajtáját tudod megnevezni?standard és a quirks módok között?application/xhtml+xml-ként szolgáljon ki?data- attribútumok?cookie a sessionStorage és a localStorage között.GET és a POST között?<script>, <script async> és <script defer> között.####[⬆] CSS kérdések:
float?clear technikákat ismersz és melyik milyen környezetben a megfelelő?* { box-sizing: border-box; }? Mik az előnyei?inline és az inline-block között?relative , fixed, absolute és statikusan pozicionált elemek között?####[⬆] JS kérdések:
event delegation?this a JavaScript-ben.function foo(){ }();undefined és az undeclared változó?function Person(){}, var person = Person() és var person = new Person().call és az .apply között?Function.prototype.bind?document.write() funkciót?event bubbling?== és === között?[1,2,3,4,5].duplicate(); // [1,2,3,4,5,1,2,3,4,5]"use strict";, mik az előnyei és a hátrányai?####[⬆] jQuery kérdések:
chaining?deferreds?.end() funkciót?.get(), [], és .eq() között?.bind(), .live(), és .delegate() között?$ és $.fn között? Vagy mit jelent a $.fn?$(".foo div#bar:eq(0)")####[⬆] Példakódok:
modulo(12, 5) // 2Kérdés: Készítsd el a modulo funkció, hogy a fenti példa eredménye 2 legyen.
"i'm a lasagna hog".split("").reverse().join("");Kérdés: Milyen értékkel tér vissza a fenti állítás?
Válasz: "goh angasal a m’i"
( window.foo || ( window.foo = "bar" ) );Kérdés: Mi az értéke a window.foo-nak?
Válasz: “bar” (de csak ha a window.foo hamis egyébként megtartja az értékét.)
var foo = "Hello"; (function() { var bar = " World"; alert(foo + bar); })(); alert(foo + bar);Kérdés: Mi a fenti két alert-nek a kimenete?
Válasz: “Hello World” és ReferenceError: bar is not defined
var foo = [];foo.push(1);foo.push(2);Kérdés: Mi a foo.length értéke?
Válasz: 2
####[⬆] Választható és vicces kérdések:
Doesn’t see yours or see something wrong? Open an issue.
File ini berisi sejumlah pertanyaan teknis yang dapat digunakan saat mewawancarai calon pekerja. Namun, bukan berarti anda dianjurkan untuk bertanya kepada si calon pekerja dengan semua pertanyaan dari daftar di bawah ini (karena itu akan memakan waktu beberapa jam). Dengan cukup memilih beberapa pertanyaan dari daftar ini akan membantu anda mengenal kemampuan yang anda cari dari si calon pekerja.
Catatan: Perlu diingat bahwa kebanyakan pertanyaan-pertanyaan ini bersifat terbuka dan mungkin dapat mengarah menjadi diskusi menarik yang bisa memberikan gambaran lebih lanjut mengenai kemampuan seseorang.
doctype lakukan?aplikasi/xhtml+xml?data-?cookie, sessionStorage dan localStorage.<script>, <script async> dan <script defer>.<link> CSS di antara <head></head> dan meletakkan <script> JS sebelum <body></body> dianggap baik pada umumnya? Apakah ada pengecualiannya?GET danPOST.class dan id dalam CSS?float dan cara kerjanya.{ box-sizing: border-box; }? Apa keuntungannya?inline dan inline-block?relative, fixed, absolute, dan static?translate() dibandingkan posisi absolute, ataupun sebaliknya? Kenapa?this dalam JavaScript.function foo () {} ();.null,undefined dan undeclared?function Person(){}, var person = Person(), dan var person = new Person()?.call dan.apply?Function.prototype.bind.document.write () digunakan?== dan ===?duplicate([1,2,3,4,5]); // [1,2,3,4,5,1,2,3,4,5]"use strict";? Apa keuntungan dan kerugian dalam penggunaannya?100, dan print “fizz” pada kelipatan 3, “buzz” pada kelipatan 5 dan “fizzbuzz” pada kelipatan 3 dan 5.load event digunakan? Apakah event ini mempunyai kerugiannya? Apakah Anda tau cara alternatif lain, dan kenapa Anda menggunakan cara itu?Pertanyaan: Apakah hasil foo?
var foo = 10 + '20';Pertanyaan: Bagaimana Anda akan membuat fungsi berikut ini bekerja?
add(2, 5); // 7add(2)(5); // 7Pertanyaan: Apakah hasil yang akan dikembalikan dari pernyataan berikut?
"i'm a lasagna hog".split("").reverse().join("");Pertanyaan: Apakah nilai window.foo?
( window.foo || (window.foo = "bar") );Pertanyaan: Apakah hasil dari dua alert di bawah ini?
var foo = "Hello"; (function() { var bar = " World"; alert(foo + bar); })(); alert(foo + bar);Pertanyaan: Apakah hasil foo.length?
var foo = [];foo.push (1);foo.push (2);Pertanyaan: Apakah hasil foo.x?
var foo = {n: 1};var bar = foo;foo.x = foo = {n: 2};Pertanyaan: Apakah hasil yang akan diprint dalam kode berikut ini?
console.log('one');setTimeout(function() { console.log('two');}, 0);console.log('three');Dokumen ini dimulai pada tahun 2009 sebagai kolaborasi dari @paul_irish @bentruyman @cowboy @ajpiano @SlexAxton @boazsender @miketaylr @vladikoff @gf3 @jon_neal @sambreed dan @iansym.
Dari sejak itu, dokumen ini sudah menerima kontribusi lebih dari 100 developers.
Questo repository contiene una serie di domande che possono essere usate nei colloqui di lavoro quando si esaminano i potenziali candidati per il ruolo di front-end. Non è affatto consigliato usare ogni singola domanda con lo stesso candidato (richiederebbe ore). Scegliere alcune di queste domande dalla lista dovrebbe aiutarti ad esaminare le skill che richiedi.
L’articolo Baseline For Front-End Developers di Rebecca Murphey è un’ottima risorsa da leggere prima di affrontare un colloquio.
Nota: Tieni presente che molte di queste domande sono a risposta aperta e possono portare a interessanti discussioni che ti possono far capire le capacità di una persona più di quello che farebbe una risposta diretta.
####[⬆] Collaboratori Originali:
La maggior parte delle domande sono state prese da una discussione su oksoclap originariamente creata da Paul Irish (@paul_irish) e con il contributo delle seguenti persone:
####[⬆] Domande Generali:
####[⬆] Domande su HTML:
doctype?application/xhtml+xml?data-?cookie, sessionStorage e localStorage.<script>, <script async> e <script defer>.<link> tags all’interno di <head></head> e Javascript <script> tags appena prima di </body>? Conosci eccezioni?####[⬆] Domande Specifiche su CSS:
####[⬆] Domande Specifiche su JS:
this in JavaScript.function foo(){ }();.null, undefined or undeclared?function Person(){}, var person = Person(), e var person = new Person()?.call e .apply?Function.prototype.bind?document.write()?document.write() sebbene il suo utilizzo venga malvisto== e ===?[1,2,3,4,5].duplicate(); // [1,2,3,4,5,1,2,3,4,5]"use strict";? Quali sono i vantaggi e gli svantaggi nell’usarlo?####[⬆] Domande Specifiche su jQuery:
.end()?.get(), [], e .eq()?.bind(), .live(), e .delegate()?$ e $.fn? O anche solo cosa è $.fn.$(".foo div#bar:eq(0)")modulo(12, 5) // 2Domanda: Implementa la funzione modulo che soddisfi quanto sopra
"i'm a lasagna hog".split("").reverse().join("");Domanda: Quale valore viene ritornato dalla dichiarazione qui sopra?
Risposta: "goh angasal a m’i"
( window.foo || ( window.foo = "bar" ) );Domanda: Qual è il valore di window.foo?
Risposta: “bar” (solo se window.foo era falso altrimenti manterrà il suo valore)
var foo = "Hello"; (function() { var bar = " World"; alert(foo + bar); })(); alert(foo + bar);Domanda: Qual è il risultato dei due alert qui sopra?
Risposta: “Hello World” & ReferenceError: bar is not defined
var foo = [];foo.push(1);foo.push(2);Domanda: Qual è il valore di foo.length?
Risposta: 2
####[⬆] Domande per Divertimento:
@バージョン 2.0.0
本レポジトリはフロントエンドデベロッパー志願者のポテンシャルを見極めるのに有効な面接時の質問事項を列挙します。全ての下記質問事項を一人の志願者に聞くことは推奨されません(それは数時間もかかってしまうでしょう)。あなたが必要としているスキルを見極めるためには、下記の質問リストからいくつかの項目を選択するのがよいでしょう。
Rebecca MurpheyのBaseline For Front-End Developersもとても参考になるので面接前によく読むことをおすすめします。
注意: これらの質問の多くはオープンエンド型の質問であり、志願者から興味深い考えを引き出すことができるでしょう。この回答は単純でストレートな回答よりもより志願者の能力を見極めるのに役立ちます。
質問の多くはPaul Irish (@paul_irish)と下記のコントリビューターによって作成されたoksoclapスレッドをもとに作成されています。
issue :retab! commanddoctypeは何をしているか説明してください。application/xhtml+xmlとしてページを提供することに何か問題はありますか?data-属性は何にとって良いですか?thisがどのように機能するか説明してください。undefinedとundeclared変数は何ですか?function Person(){}, var person = Person(), var person = new Person().callと.applyの違いは何ですか?Function.prototype.bindを説明してください。document.write()はいつ使いますか?document.write()を活用しています。==と===の違いは何ですか?[1,2,3,4,5].duplicate(); // [1,2,3,4,5,1,2,3,4,5]"use strict";とは何ですか? これを使うことのメリット、デメリットは何ですか?~~3.14質問: 上ステートメントで得られる値は何ですか?
回答: 3
"i'm a lasagna hog".split("").reverse().join("");質問: 上ステートメントで得られる値は何ですか?
回答: "goh angasal a m’i"
( window.foo || ( window.foo = "bar" ) );質問: window.fooの値は何ですか?
回答: "bar"
window.fooがfalseと判断される場合のみ。trueの場合はその値を保持し続ける。
var foo = "Hello"; (function() { var bar = " World"; alert(foo + bar); })(); alert(foo + bar);質問: 上2つのアラートの結果はどうなりますか?
回答: “Hello World” & ReferenceError: bar is not defined
var foo = [];foo.push(1);foo.push(2);質問: foo.lengthの値はどうなりますか?
回答: 2
var foo = {};foo.bar = 'hello';質問: foo.lengthの値はどうなりますか?
回答: undefined
.end()は何ですか?.get()、 []、.eq()の違いは何ですか?.bind()、.live()、.delegate()の違いは何ですか?$、$.fnの違いは何ですか? 単に$.fnと書いた場合はどうですか?$(".foo div#bar:eq(0)")delegate()とlive()の違いは何ですか?이 파일에는 잠재적인 프론트엔드 개발자 후보를 선정할 때 사용할 수 있는 여러 가지 면접 질문들이 있습니다. 후보자에게 모든 문제를 사용하는 것은 많은 시간이 소요되기 때문에 추천하지 않습니다. 대신, 여러분이 요구하는 주요 기술과 관련된 질문들을 몇 가지 선정해서 사용해보세요.
참고: 여기 있는 많은 질문은 자유롭게 추가/수정/삭제될 수 있고 정답보다 그 사람의 능력에 관해 이야기하는 흥미로는 토론을 끌어낼 수 있다는 것을 기억하세요.
doctype이 무엇을 하는 것인가요?application/xhtml+xml으로 지정한 페이지에 어떠한 문제가 있나요?data-속성은 무엇을 하는 것인가요? 사용했을 때 이점은 무엇인가요?쿠키(Cookies)와 세션저장소(sessionStorage)와 로컬저장소(localStorage)의 차이점을 설명해주세요.<script>, <script async>와 <script defer>의 차이점에 관해 설명해주세요.<link>를 <head></head>사이에 쓰는 것과 JS<script>를 <body></body>뒤에 사용하는 것은 좋은 사용법일까요? 어디에 배치하는 게 좋을까요?srcset 속성을 사용하는 이유는 무엇인가요? 브라우저가 이 속성을 가진 콘텐츠를 평가할 때 사용하는 과정을 설명해보세요.* { box-sizing: border-box; }은 무엇이고 사용했을때 이점은 무엇인가요?translate() 혹은 반대로 사용하는 이유가 있나요? 있다면 이유에 관해서 설명해주세요.this는 JavaScript에서 어떻게 작동하는지 설명해주세요.function foo(){ }();.null과 unedefined 그리고 undeclared의 차이점은 무엇인가요?function Person(){} var person = Person() var person = new Person().call과 .apply의 차이점은 무엇인가요?Function.prototype.bind을 설명하세요.document.write()는 언제 사용하나요?==와 ===의 차이점은 무엇인가요?duplicate([1,2,3,4,5]); // [1,2,3,4,5,1,2,3,4,5]use strict;은 무엇이고, 사용했을 때 장단점에 관해서 설명해주세요.fizz, 5의 배수일 때는 buzz, 3과 5의 공배수일 때는 fizzbuzz가 출력되는 코드를 작성해보세요.load event를 사용하는 이유에 관해 설명해주세요. 또 단점이 있다면 대안에 대해서도 설명해주세요.function foo() {}와 var foo = function() {}에서 foo 의 차이가 무엇인지 설명해보세요.let, var, const의 차이점에 관해서 설명해주세요.질문: foo의 값은 무엇인가요?
var foo = 10 + '20';질문: 아래 코드의 결과값은 무엇인가요?
console.log(0.1 + 0.2 == 0.3);질문: 아래 코드가 동작하게 하기 위해선 어떻게 해야할까요?
add(2, 5); // 7add(2)(5); // 7질문: 아래 구문의 반환값은 무엇인가요?
"i'm a lasagna hog".split("").reverse().join("");Question: What is the value of window.foo?
질문: window.foo의 값은 무엇인가요?
( window.foo || ( window.foo = "bar" ) );질문: 아래 두 alert의 결과값은 무엇인가요?
var foo = "Hello";(function() { var bar = " World"; alert(foo + bar);})();alert(foo + bar);질문: foo.length의 값은 무엇인가요?
var foo = [];foo.push(1);foo.push(2);질문: foo.x의 값은 무엇인가요?
var foo = {n: 1};var bar = foo;foo.x = foo = {n: 2};질문: 아래 코드의 출력값은 무엇인가요?
console.log('one');setTimeout(function() { console.log('two');}, 0);console.log('three');이 문서는 2009년에 다음에 언급된 분들과의 협업으로 시작했습니다.
@paul_irish @bentruyman @cowboy @ajpiano @SlexAxton @boazsender @miketaylr @vladikoff @gf3 @jon_neal @sambreed @iansym
현재는 100이 넘는 개발자들이 함께하고 있습니다.
##해설집
이 문서는 정답을 알려주는 문서가 아닙니다.
-면접에 대한 답은 스스로가 찾아야 좋으며,
-그 판단을 돕기 위한 해설서 임을 밝히는 바입니다.
-##기여자
@Songhun(http://songhun.blogspot.com)
@YiHanghee(http://blog.javarouka.me)
##일반적인 질문에 대한 참고
##HTML에 대한 참고
doctype에 대한 설명은 Wikipedia 에서 찾아볼 수 있습니다.##Javascript에 대한 참고
##jQuery에 대한 참고
##CSS 참고
##흥미로운 질문들에 대한 참고
Šis repozitorijs satur vairākus ar front-end web programmētāja darba prasmēm saistītus jautājumus, ko var izmantot, intervējot potenciālos vakances kandidātus. Nav ieteicams izmantot katru šeit minēto jautājumu, jo tas patērētu ļoti daudz laika. Izvēlieties tikai dažus jautājumus no šī saraksta, kas Jums palīdzēs ātrāk atlasīt kandidātus ar nepieciešamajām prasmēm.
Rebecca Murphey Baseline For Front-End Developers raksts ir ļoti piemērota lasāmviela, kuru izlasīt pirms dodaties uz darba interviju.
Piezīme: Paturiet prātā, ka daudzi no šiem jautājumiem ir atvērta tipa, kas varētu izvērsties plašākā diskusijā un ļautu iepazīt cilvēka prasmes daudz labāk nekā tieša atbilde.
####[⬆] Sākotnējie Kontributori:
Vairums no jautājumiem tika paņemti no oksoclap raksta, ko sākotnēji izveidoja Paul Irish (@paul_irish) un kuru papildināja sekojoši cilvēki:
####[⬆] HTML Jautājumi:
doctype?application/xhtml+xml?data- atribūti?####[⬆] CSS Jautājumi:
####[⬆] JS Jautājumi:
this strādā JavaScript valodāfunction foo(){ }();.null, undefined or undeclared?function Person(){}, var person = Person(), un var person = new Person()?.call un .apply?Function.prototype.bind?document.write()?document.write() kaut arī šāda prakse tiek pelta.== un ===?[1,2,3,4,5].duplicate(); // [1,2,3,4,5,1,2,3,4,5]"use strict";? Kādas ir priekšrocības un trūkumi to izmantojot?####[⬆] jQuery Jautājumi:
.end()?.get(), [], un .eq()?.bind(), .live(), un .delegate()?$ un $.fn? Vai vienkārši kas ir $.fn?$(".foo div#bar:eq(0)")modulo(12, 5) // 2Jautājums: Izveidojiet modulo funkciju, kas apmierina augstākminēto
"i'm a lasagna hog".split("").reverse().join("");*Jautājums: Kāda vērtība tiek atgriezta no augšākminētā koda?
Atbilde: "goh angasal a m’i"
( window.foo || ( window.foo = "bar" ) );Jautājums: Kāda ir window.foo vērtība?
Atbilde: “bar” (vienīgi°ja window.foo “falsey”, savādāk tas paturētu savu esošo vērtību)
var foo = "Hello"; (function() { var bar = " World"; alert(foo + bar); })(); alert(foo + bar);Jautājums: Kāds ir abu augstākminēto paziņojumu iznākums?
Atbilde: “Hello World” & ReferenceError: bar is not defined
var foo = [];foo.push(1);foo.push(2);Jautājums: Kāda ir foo.length vērtība?
Atbilde: 2
####[⬆] Interesanti Jautājumi:
@version 2.0.0
To repozytorium zawiera wiele pytań weryfikujących wiedzę potencjalnych kandydatów na stanowisko front-end web developera. Nie zaleca się zadawania wszystkich pytań jednej osobie (zajęłoby to godziny). Wybranie pojedynczych pozycji z listy pomoże w sprawdzeniu wymaganych umiejętności.
Rebecca Murphey opracowała Podstawowe wymagania dla Front-End web developerów, które są warte przeczytania zanim udamy się na rozmowę o pracę.
Uwaga: Pamiętaj, że wiele pytań jest otwartych, co prowadzi do ciekawych dyskusji, które powiedzą Ci więcej o możliwościach danej osoby, niż w przypadku prostej odpowiedzi.
Większość pytań zaczerpnięto z wątku oksoclap stworzonego pierwotnie przez Paula Irisha (@paul_irish) i rozwijanego przez następujące osoby:
issue :retab! commanddoctype i jakie znasz przykłady?application/xhtml+xml?data-this w JavaScripcie.undefined i undeclared dla zmiennych?host i native?function Person(){} var person = Person() var person = new Person().call i .apply?Function.prototype.bind?document.write()?document.write() choć nie jest to mile widzianeload i ready dla strony internetowej?== i ===?same-origin w odniesieniu do JavaScript.[1,2,3,4,5].duplicate(); // [1,2,3,4,5,1,2,3,4,5]arity funkcji?"use strict";? Jakie są zalety i wady takiego rozwiązania?~~3.14Pytanie: Jaka wartość zostanie zwrócona przez powyższe wyrażenie?
Odpowiedź: 3
"i'm a lasagna hog".split("").reverse().join("");Pytanie: Jaka wartość zostanie zwrócona przez powyższe wyrażenie?
Odpowiedź: "goh angasal a m’i"
( window.foo || ( window.foo = "bar" ) );Pytanie: Jaka jest wartość window.foo?
Odpowiedź: "bar"
tylko jeśli window.foo było fałszywe, w innym przypadku zwraca swoją wartość.
var foo = "Hello"; (function() { var bar = " World"; alert(foo + bar); })(); alert(foo + bar);Pytanie: Jaki będzie wyniki wywołania dwóch powyższych poleceń alert?
Odpowiedź: “Hello World” & ReferenceError: bar is not defined
var foo = [];foo.push(1);foo.push(2);Pytanie: Jaka jest wartość foo.length?
**Odpowiedź: 2
var foo = {};foo.bar = 'hello';Pytanie: Jaka jest wartość foo.length?
**Odpowiedź: undefined
.end()?.get(), [], i .eq()?.bind(), .live(), i .delegate()?$ i $.fn? Czym jest $.fn?$(".foo div#bar:eq(0)")float.Este repositório contém uma série de perguntas para entrevista de profissionais de front-end que podem ser usadas para avaliar os candidatos. Não é recomendado de maneira alguma usar todas as perguntas aqui no mesmo candidato (que levaria horas). A escolha de alguns itens dessa lista deverá ajudar a identificar as habilidades requeridas do candidato.
O artigo Baseline For Front-End Developers de Rebecca Murphey é também uma ótima fonte para ler antes de entrevistar um candidato.
Note: Tenha em mente que muitas destas questões estão em aberto e poderia levar à discussões interessantes que dizem mais sobre as capacidades do candidato do que a resposta em si.
A maiorida das questões foram retiradas de um _thread_da oksoclap originalmente criada por Paul Irish (@paul_irish) e com a contribuição das seguintes pessoas: @bentruyman @cowboy @ajpiano @SlexAxton @boazsender @miketaylr @vladikoff @gf3 @jon_neal @sambreed @iansym
issue :retab! commanddoctype faz?application/xhtml+xml?data-?GET e POST?* { box-sizing: border-box; } faz? Quais são as vantagens?this funciona em JavaScript.function foo(){ }();.null, undefined ou undeclared?function Person(){}, var person = Person(), e var person = new Person()?.call e .apply?Function.prototype.bind.document.write()?document.write() embora seu uso não seja recomendado.== e ===?[1,2,3,4,5].duplicate(); // [1,2,3,4,5,1,2,3,4,5]"use strict";? Quais a vantagens e desvantagens de sua utilização?100 enquanto retorna fizz em múltiplos de 3, buzz em múltiplos de 5 e fizzbuzz em múltiplos de 3 e 5..end() faz?.get(), [], e .eq()?Questão: Como você faria isso funcionar?
add(2, 5); // 7add(2)(5); // 7Questão: Qual valor é retornado da seguinte declaração?
"sou uma lasanha".split("").reverse().join("");Resposta: "ahnasal amu uos"
Questão: Qual é o valor de window.foo?
( window.foo || ( window.foo = "bar" ) );Resposta: “bar” (apenas se window.foo for falso, se não ele vai retornar o seu valor próprio).
Questão: Qual o retorno dos dois alerts abaixo?
var foo = "Hello";(function() { var bar = " World"; alert(foo + bar);})();alert(foo + bar);Resposta: “Hello World” & ReferenceError: bar is not defined
Questão: Qual o valor de foo.length?
var foo = [];foo.push(1);foo.push(2);Resposta: 2
Lançado sobre a Licença MIT. Veja o arquivo LICENSE para detalhes.
Acest fișier conține o serie de întrebări pentru interviuri tehnice pe partea
de front-end, care pot fi folosite pentru a verifica un potențial candidat. Nu
este deloc recomandat să fie folosite toate întrebările pentru un singur
candidat (ar lua câteva ore). Alegând câteva întrebări din această listă ar
trebui să te ajute în verificarea calităților pe care le urmărești.
Notă: Ține minte că multe dintre întrebări au răspuns liber și ar
putea duce la discuții interesante care ți-ar putea spune mai multe despre
capacitățile persoanei.
Flash of Unstyled Content? Cum eviți FOUC?####[⬆] Întrebări despre HTML:
doctype?application/xhtml+xml?data-?cookies, sessionStorage și localStorage.<script>, <script async> și <script defer>.* { box-sizing: border-box; }? Care sunt avantajele?inline și inline-block?translate() în loc dethis în JavaScript.function foo(){ }();null, undefined sauundeclared?function Person(){}, var person = Person() șiperson = new Person().call și .apply?Function.prototype.bind?document.write()?duplicate([1,2,3,4,5]); // [1,2,3,4,5,1,2,3,4,5]"use strict;" și care sunt avantajele și dezavantajele folosirii100 while outputting "fizz"3, "buzz" at multiples of 5 and “fizzbuzz” at3 and 5.####[⬆] Întrebări despre testare:
####[⬆] Întrebări despre perfomanță:
####[⬆] Întrebări despre rețea:
Întrebare: Care este valoarea lui foo?
var foo = 10 + '20';Întrebare: Ce valoare returnează următorul cod?
console.log(0.1 + 0.2 == 0.3);Întrebare: Cum ai face următoarea să funcționeze?
add(2, 5); // 7add(2)(5); // 7Întrebare: Ce valoare este returnată de expresia următoare?
"i'm a lasagna hog".split("").reverse().join("");Întrebare: Care este valoare lui window.foo?
( window.foo || ( window.foo = "bar" ) );Întrebare: Care este rezultatul celor două apelări ale funcției alert?
var foo = "Hello";(function() { var bar = " World"; alert(foo + bar);})();alert(foo + bar);Întrebare: Care este valoarea lui foo.length?
var foo = [];foo.push(1);foo.push(2);Întrebare: Care este valoarea lui foo.x?
var foo = {n: 1};var bar = foo;foo.x = foo = {n: 2};Întrebare: Ce output printează acest cod?
console.log('one');setTimeout(function() { console.log('two');}, 0);console.log('three');####[⬆] Contribuitori:
Acest document a început în 2009 ca o colaborare între
@paul_irish
@bentruyman
@cowboy
@ajpiano
@SlexAxton
@boazsender
@miketaylr
@vladikoff
@gf3
@jon_neal
@sambreed și
@iansym.
De atunci au contribuit mai mult de 100 de
persoane!
Замечание: Этот репозиторий содержит подборку вопросов, которые могут быть использованы на собеседованиях на должность front-end разработчика. Здесь предлагаются лишь идеи, не нужно задавать все вопросы сразу (иначе в один час точно не уложитесь).
Также имейте в виду, что многие вопросы не требуют однозначного короткого ответа, а лишь помогают завести беседу на ту или иную тему (предоставляя кандидату возможность показать себя во всей красе).
Этот проект был запущен в 2009 году в сотрудничестве с @paul_irish @bentruyman @cowboy @ajpiano @SlexAxton @boazsender @miketaylr @vladikoff @gf3 @jon_neal @sambreed и @iansym.
В настоящее время этот проект поддерживают:
С тех пор он был активным благодаря этим замечательным людям.
doctype?data- атрибуты?cookie, sessionStorage и localStorage.<script>, <script async> и <script defer>.<link> для подключения CSS между <head></head>, а <script> для подключения JS ставить перед </body>? Знаете ли вы исключения?srcset в теге изображения? Опишите процесс, который использует браузер при оценке содержимого этого атрибута.@media, отличного от screen?* { box-sizing: border-box; }? В чем его преимущества?display и можете ли вы привести несколько примеров его использования?translate() вместо абсолютного позиционирования и наоборот? И почему?this работает в JavaScript.function foo(){ }();.null, undefined и не объявлено?forEach и циклом .map()? И в каких случаях каждый из них используется?function Person(){}, var person = Person(), и var person = new Person()?.call и .apply?Function.prototype.bind?== и ===?same-origin policy в контексте JavaScript.duplicate([1,2,3,4,5]); // [1,2,3,4,5,1,2,3,4,5]"use strict";? Какие достоинства и недостатки от ее использования?100, возвращая “fizz” на числа кратные 3, “buzz” на числа кратные 5 и “fizzbuzz” на числа кратные 3 и 5load? Есть ли у этого события недостатки? Знаете ли вы какие-либо альтернативы, и в каких случаях бы стали их использовать?foo в function foo() {} и var foo = function() {}let, var и const?=>? Чем они отличаются от других функций?spread оператора и чем он отличается от rest оператора?Вопрос: Чему равно foo?
var foo = 10 + '20';Вопрос: Что выводит код ниже?
console.log(0.1 + 0.2 == 0.3);Вопрос: Как сделать, чтобы это выражение работало?
add(2, 5); // 7add(2)(5); // 7Вопрос: Какое значение возвращает данное выражение?
"i'm a lasagna hog".split("").reverse().join("");Вопрос: Чему равно window.foo?
( window.foo || ( window.foo = "bar" ) );Вопрос: Что покажут эти два alert?
var foo = "Hello";(function() { var bar = " World"; alert(foo + bar);})();alert(foo + bar);Вопрос: Чему равно foo.length?
var foo = [];foo.push(1);foo.push(2);Вопрос: Чему равно foo.x?
var foo = {n: 1};var bar = foo;foo.x = foo = {n: 2};Вопрос: Что выводит код ниже?
console.log('one');setTimeout(function() { console.log('two');}, 0);console.log('three');Вопрос: В чем разница между этими четырьмя промисами (promises)?
doSomething().then(function () { return doSomethingElse();});doSomething().then(function () { doSomethingElse();});doSomething().then(doSomethingElse());doSomething().then(doSomethingElse);@version 0.0.1
Ovaj repo sadrži mnogobrojna pitanja za intervju iz oblasti front-end develpment-a koja možete koristiti u proceni mogućih kandidata.
Ne preporučuje se korišćenje svih pitanja jer bi intervju trajao dugo. Izbor od nekoliko pitanja sa ove liste bi Vam pomogao.
Pre intevjua, preporučujemo da proučite članak: Rebecca Murphey Baseline For Front-End Developers.
Napomena: Uzmite u obzir da veliki broj dole navedenih pitanja može biti korisna tema za razgovor koja će Vam možda reći vise o sposobnostima osobe nego direktni odgovori.
####Autori originalne liste
Većina pitanja je preuzeta sa oksoclap tj. rasprave koju je originalno pokrenuo Paul Irish (@paul_irish) i kojoj su doprineli:
koristili :retab! naredbudoctype?application/xhtml+xml?data- atributi?thisfunction foo(){ }();?null, undefined i undeclared?function Person(){}, var person = Person(), i var person = new Person()?.call i .apply?Function.prototype.binddocument.write()?document.write() iako se to ne preporučuje.== i ===?[1,2,3,4,5].duplicate(); // [1,2,3,4,5,1,2,3,4,5]"use strict";? Koje su mane, koje prednosti?.end() ?,[], i.eq()`?,.live(), i.delegate()`?$ i $.fn? Ili samo što je $.fn.$(".foo div#bar:eq(0)")modulo(12, 5) // 2Pitanje: Napišite modulo funkciju koja daje rezultat prikazan iznad
"i'm a lasagna hog".split("").reverse().join("");Pitanje: Šta će biti vraćeno iz funkcije prikazane iznad?
Odgovor: "goh angasal a m’i"
( window.foo || ( window.foo = "bar" ) );Pitanje: Koja je vrednost window.foo?
Odgovor: "bar"
var foo = "Hello"; (function() { var bar = " World"; alert(foo + bar); })(); alert(foo + bar);Pitanje: Šta će se desiti kao rezultat 2 alerta iznad?
Odgovor: “Hello World” i ReferenceError: bar is not defined
var foo = [];foo.push(1);foo.push(2);Pitanje: Koja je vrednost foo.length?
Odgovor: 2
Tento repozitár obsahuje rad otázok, ktoré môžete položiť pri pohovore kandidátovi na pozíciu front-end vývojár a overiť si tak jeho znalosti v tomto odbore. Nie je zamýšľané položiť všetky tieto otázky (ich korektné zodpovedanie by trvalo hodiny), bohato postačí len určitú časť vyhovujúci vašim potrebám.
Za prečítanie stojí tiež Baseline For Front-End Developers (anglicky) od Rebecci Murphey.
Poznámka: Majte na pamäti, že tieto otázky majú viesť skôr k diskusii na danú tému a prezradiť tak niečo viac o schopnostiach daného vývojára, než aby boli zodpovedané jedným slovom alebo vetou.
####[⬆] Pôvodní prispievatelia:
Väčšina otázok bola prevzatá z oksoclap pôvodne vytvoreného Paulom Irishom (@paul_irish) a následne doplnená týmito osobami:
####[⬆] Všeobecné otázky:
issue :retab ! command####[⬆] HTML otázky:
doctype?application/xhtml+xml?data-?####[⬆] CSS otázky:
####[⬆] JS otázky:
this v JavaScripte.function foo(){ }();.null, undefined alebo undeclared?function Person(){}var person = Person()var person = new Person().call a .apply?undefined a null?Function.prototype.bind.document.write()?== a ===?[1,2,3,4,5].duplicate(); // [1,2,3,4,5,1,2,3,4,5]"use strict";? Aké sú výhody a nevýhody použitia?####[⬆] jQuery otázky:
.end()?.get(), [] a .eq()?.bind(), .live() a .delegate()?$ a $.fn? Alebo len, čo je $.fn?$(".foo div#bar:eq(0)");.delegate() a .live()?####[⬆] Otázky z kódu:
modulo(12, 5) // 2Otázka: Implementujte funkciu modulo tak, aby splnila zadanie.
"i'm a lasagna hog".split("").reverse().join("");Otázka: Akú hodnotu vráti uvedený výraz?
Odpoveď:" goh angasal a m’i"
(window.foo || (window.foo = "bar"));Otázka: Akú hodnotu má window.foo?
Odpoveď: “bar” (iba ak window.foo bolo false, inak vráti svojou hodnotu)
var foo = "Hello";(function() { var bar = "World"; alert(foo + bar);})();alert(foo + bar);Otázka: Čo zobrazia uvedené dva alerty?
Odpoveď: “Hello World” a ReferenceError: bar is not defined
var foo = [];foo.push(1);foo.push(2);Otázka: Aká je hodnota foo.length?
Odpoveď: 2
####[⬆] Zábavné otázky:
@verzija 1.0
Obvestilo: Ta repositorij vsebuje vrsto front-end vprašanj, ki se lahko uporabijo za preverjanje potencialnih kandidatov. Ni priporočljivo, da se vsa vprašanja uporabijo za vsakega kandidata (to bi trajalo ure). Izberite nekaj vprašanj, ki vam bodo pomagala preveriti kandidata za znanja, ki jih potrebujete.
Mnogo teh vprašanj je odprtega tipa in lahko pripeljejo do zanimivih diskusij, ki vam bodo o kandidatih sporočili več, kot pa navaden kratek odgovor.
####Originalni Avtorji
Obvestilo: večino teh vprašanj je bilo pobranih iz foruma, ustvarjenega in vzdrževanega od nasljednjih ljudi:
issue :retab! commanddoctype in koliko različtih lahko našteješ?application/xhtml+xml?data- atribute?undefined in undeclared spremenljivki?function Person(){} var person = Person() var person = new Person().call in .apply?Function.prototype.bind?document.write()?== in ===?[1,2,3,4,5].duplicator(); // [1,2,3,4,5,1,2,3,4,5]"use strict";? Prednosti/slabosti?~~3.14Vprašanje: Kaj je vrednost zgornjega stavka?
Odgovor: 3
"i'm a lasagna hog".split("").reverse().join("");Vprašanje: Kaj je vrednost zgornjega stavka?
Odgovor: "goh angasal a m’i"
( window.foo || ( window.foo = "bar" ) );Vprašanje: Kaj je vrednost window.foo?
Odgovor: "bar"
samo če je bil window.foo “lažen”, drugače bo ohranil svojo vrednost.
var foo = "Hello"; (function() { var bar = " World"; alert(foo + bar); })(); alert(foo + bar);Vprašanje: Kaj je rezultat zgornjih dveh alert-ov?
Odgovor: “Hello World” & ReferenceError: bar is not defined
var foo = [];foo.push(1);foo.push(2);Vprašanje: Kaj je vrednost od foo.length?
**Odgovor: 2
var foo = {};foo.bar = 'hello';Vprašanje: Kaj je vrednost od foo.length?
**Answer: undefined
foo = foo||barVprašanje: Kako bi lahko drugače napisal/a zgornji stavek?
*Odgovor: if(!foo) foo = bar
foo>>1Vprašanje: Kako bi lahko drugače napisal/a zgornji stavek?
**Odgovor: Math.floor(foo/2)
foo|0foo+.5|0Vprašanje: Kako bi lahko drugače napisal/a zgornji stavek?
**Odgovor: parseInt(foo) & Math.round(foo)
function foo(bar1, bar2, bar3){}Vprašanje: Kako dobiti število paremetrov podanih v funkcijo?
**Odgovor: foo.length // 3 za ta primer
.end()?.get(), [], in .eq()?.bind(), .live(), in .delegate()?$ in $.fn? Oz. kaj je $.fn?$(".foo div#bar:eq(0)")Este repositorio contiene preguntas de entrevistas a programadores front-end, que pueden ser usadas para revisar a candidatos potenciales. Bajo ningún concepto se recomienda usar todas las preguntas aquí expuestas con el mismo candidato (eso llevaría horas). Escoger algunos elementos de esta lista debería ayudarle a revisar las habilidades que requiere.
Nota: Tenga en mente que muchas de estas preguntas son abiertas y pueden llevar a interesantes discusiones que le pueden decir más sobre las capacidades de la persona que una simple respuesta.
doctype y cuántos tipos puede nombrar?application/xhtml+xml?data-?cookies, sessionStorage y localStorage.<script>, <script async> y <script defer>.<link> dentro de la etiqueta <head> y la etiqueta <script> justo antes de cerrar la etiqueta <body>. ¿Conoces algún caso excepcional?z-index y como se decide el contexto de apilado de elementos.clear y cuál funciona para cuál contexto?box model (modelo de cajas) y como podría hacer que un navegador renderize su esquema usando diferentes modelos de cajas?* {box-sizing: border-box;}. ¿Qué desventajas supone su uso?display que pueda recordarinline y inline-block?relative, fixed, absolute y static para un elemento dado?translate() en vez de el posicionamiento absoluto? ¿Alguna razón para hacer lo contrario?this en JavaScript.function foo(){ }(); no funciona como un IIFE.null, undefined y undeclared?function Person(){}, var person = Person() y var person = new Person()?.call y .apply?Function.prototype.bind?document.write()?== y ===?[1,2,3,4,5].duplicator(); // [1,2,3,4,5,1,2,3,4,5]"use strict";? ¿Cuáles son las ventajas y desventajas de usarlo?for de 100 iteraciones que imprima “fizz” en los múltiplos de 3, “buzz” en los múltiplos de 5 y “fizzbuzz” en los múltiplos de 3 y 5load?, ¿usarlo representa alguna ventaja?, ¿conoce alternativas y el por qué usaría dichas alternativas?event loop?layout, painting y compositing.Long-polling, websockets y server-sent events?Expires, Date, Age y If-Modified-Do Not TrackCache-ControlTransfer-EncodingEtagX-Frame-OptionsHTTP? explique las acciones HTTP que conozca.Pregunta: ¿Cuál es el valor de foo?
var foo = 10 + '20';Pregunta: ¿Cómo harías funcionar esto?
add(2, 5); // 7add(2)(5); // 7Pregunta: ¿Cuál es el resultado de la siguiente sentencia?
"i'm a lasagna hog".split("").reverse().join("");Pregunta: ¿Cuál es el valor de window.foo?
( window.foo || ( window.foo = "bar" ) );Pregunta: ¿Cuál es el resultado de los dos alerts?
var foo = "Hello";(function() { var bar = " World"; alert(foo + bar);})();alert(foo + bar);Pregunta: ¿Cuál es el valor de foo.length?
var foo = [];foo.push(1);foo.push(2);Pregunta: ¿Cuál es el valor de foo.x?
var foo = {n: 1};var bar = foo;foo.x = foo = {n: 2};Pregunta: ¿Qué imprime el siguiente código?
console.log('one');setTimeout(function() { console.log('two');}, 0);console.log('three');Este documento se creó en 2009 como una colaboración de @paul_irish @bentruyman @cowboy @ajpiano @SlexAxton @boazsender @miketaylr @vladikoff @gf3 @jon_neal @sambreed y @iansym.
Ha recibido contribuciones de 100 desarrolladores.
Detta arkiv innehåller ett urval av frågor som kan ställas till den arbetssökande. Det är verkligen inte rekommenderat att ställa alla frågor här till samma person (det skulle ta timmar). Att välja ut ett par stycken från listan bör hjälpa dig besluta huruvida den arbetssökande uppfyller dina krav.
Att tänka på: Kom ihåg att många av de här frågorna är öppna och kan leda till intressanta diskussioner som berättar mer om personens kunskaper än vad en sluten fråga skulle.
doctype)?application/xhtml+xml?data--attribut bra för?cookie, sessionStorage och localStorage.<script>, <script async> och <script defer>.<link>ar mellan <head></head> och JS-<script>ar precis före </body>? Känner du till några undantag?* { box-sizing: border-box; }? Vad är dess fördelar?translate() i stället för absolut positionering och vice-versa? I så fall varför?this fungerar i JavaScriptfunction foo(){ }();.null, undefined eller undeclared?function Person(){}, var person = Person() och var person = new Person()?.call och .apply?Function.prototype.bind?document.write()?== och ===?duplicate([1,2,3,4,5]); // [1,2,3,4,5,1,2,3,4,5]"use strict";? Vilka är för- och nackdelarna med att använda det?100 medan den skriver ut “fizz” vid multiplar av 3, “buzz” vid multiplar av 5 och “fizzbuzz” vid multiplar av 3 och 5.load-eventet? Har det eventet några nackdelar? Känner du till några alternativ och varför skulle man i så fall vilja använda dem?Fråga: Vad är värdet av foo?
var foo = 10 + '20';Fråga: Hur skulle du få det här att fungera?
add(2, 5); // 7add(2)(5); // 7Fråga: Vilket värde returneras från nedanstående?
"i'm a lasagna hog".split("").reverse().join("");Fråga: Vad är värdet av window.foo?
( window.foo || ( window.foo = "bar" ) );Fråga: Vad kommer de två alerterna att ropa ut?
var foo = "Hello";(function() { var bar = " World"; alert(foo + bar);})();alert(foo + bar);Fråga: Vad är värdet av foo.length?
var foo = [];foo.push(1);foo.push(2);Fråga: Vad är värdet av foo.x?
var foo = {n: 1};var bar = foo;foo.x = foo = {n: 2};Det här dokumentet startades 2009 som ett samarbete mellan @paul_irish @bentruyman @cowboy @ajpiano @SlexAxton @boazsender @miketaylr @vladikoff @gf3 @jon_neal @sambreed och @iansym.
Det har sedan dess fått bidrag från över 100 utvecklare.
Burada ön yüz yazılım -ya da front-end- iş başvurularınızda karşınıza çıkabilecek sorular yer almaktadır. Her sorunun iş başvurularınızda karşınıza çıkması garanti değil ancak ihtimali var. Ayrıca buradaki sorular sadece iş başvurusu yapanlar için değil, bu branşta kendini geliştirmeyi düşünenler için de kaynak niteliğindedir.
Not: Buradaki birçok sorunun ucunun açık olduğunu, bu sebeple vereceğiniz cevaba göre ilginç tartışmalara yol açabileceğini unutmayın.
Tab boşluk kullanılıyor ama siz Space ile boşluk bırakmayı tercih ediyorsunuz. Bu durumda ne yaparsınız?doctypeın işlevi nedir?application/xhtml+xml olarak çalıştırılmasında herhangi bir sakınca var mıdır?data- özelliği ne faydalar sağlar?cookie, sessionStorage ve localStorage arasındaki farkları açıklayabilir misin?<script>, <script async> ve <script defer> arasındaki farkları açıklayabilir misin?<link>lerin <head></head> arasında ve JS <script>lerinin </body> etiketinden önce olması niye genelde iyi bir fikirdir? Herhangi bir istisna biliyor musun?* { box-sizing: border-box; } ne yapar? Avantajları nelerdir?translate() yerine absolute positioning, veya tam tersini kullanmak için bir sebebiniz olabilir mi? Ve neden?this nasıl çalışıyor?function foo(){ }();.null, undefined ve undeclared arasında ne farklar var?function Person(){}, var person = Person(), ve var person = new Person() arasındaki farklar nelerdir?.call ve .apply arasındaki fark nedir?Function.prototype.bind özelliğinin ne olduğunu açıklayınız.undefined ve null arasındaki fark nedir?document.write() fonksiyonunu ne zaman kullanmalıyız?== ve === arasında ne fark vardır?[1,2,3,4,5].duplicate(); // [1,2,3,4,5,1,2,3,4,5]"use strict"; nedir? Bunu kullanmanın artı/eksileri nelerdir?100 while outputting “fizz” at multiples of 3, “buzz” at multiples of 5 and “fizzbuzz” at multiples of 3 and 5load gibi bir event kullanırsınız? Bunun dezavantajları var mı? Bildiğiniz alternatifleri var mı ve neden onları kullanıyorsunuz?foo, function foo() {} ve var foo = function() {} arasındaki farkları açıklayın.Soru:foo'nun değeri nedir?
var foo = 10 + '20';Soru: Bu işi nasıl yaparsınız?
add(2, 5); // 7add(2)(5); // 7Soru: Bu ifadeden dönen sonuç nedir?
"i'm a lasagna hog".split("").reverse().join("");Question: window.foo değeri nedir?
( window.foo || ( window.foo = "bar" ) );Question: Aşağıdaki iki "alert"in çıktısı nedir?
var foo = "Hello";(function() { var bar = " World"; alert(foo + bar);})();alert(foo + bar);Soru: foo.length değeri nedir?
var foo = [];foo.push(1);foo.push(2);Soru: foo.x değeri nedir?
var foo = {n: 1};var bar = foo;foo.x = foo = {n: 2};Soru: Bu kodun çıktısı nedir?
console.log('one');setTimeout(function() { console.log('two');}, 0);console.log('three');Bu proje 2009 yılında bu katılımcılarla başladı: @paul_irish @bentruyman @cowboy @ajpiano @SlexAxton @boazsender @miketaylr @vladikoff @gf3 @jon_neal @sambreed and @iansym.
Bu projenin bakımı şu anda aşağıdaki kişiler tarafından yapılmaktadır:
O zamandan beri bu inanılmaz derecede harika insanlar sayesinde etkin durumda.
İlham mı geldi? Katkı sağlamak için Katılım rehberimizi inceleyin!
Примітка: Цей репозиторій містить підбірку питань, які можуть бути використані на співбесідах на посаду front-end розробника. Тут пропонуються лише ідеї, не варто задавати всі запитання відразу (інакше однієї години точно не вистачить).
Також, майте на увазі, що багато питань не потребують однозначної короткої відповіді, а лише допомагають завести бесіду на ту чи іншу тему (даючи змогу кандидату показати себе в усій красі).
:retab!doctype і скільки різновидів Ви можете назвати?application/xhtml+xml?data- атрибути?GET іPOST?невизначені (undefined) і неоголошені (undeclared) змінні?function Person(){}var person = Person()var person = new Person().call і.apply?Function.prototype.bind?document.write ()?document load і document ready?== і ===?same-origin policy в контексті JavaScriptevent delegation[1,2,3,4,5].duplicator(); // [1,2,3,4,5,1,2,3,4,5]" use strict ";? Які переваги та недоліки від її використання?~~3.14Питання: Яке значення повертає цей фрагмент коду?
Відповідь: 3
"i'm a lasagna hog".split("").reverse().join("");Питання: Яке значення повертає цей фрагмент коду?
Відповідь: "goh angasal a m’i"
( window.foo || ( window.foo = "bar" ) );Питання: Чому дорівнює window.foo?
Відповідь: “bar” (тільки якщо вираз window.foo був хибним, інакше змінна збереже своє початкове значення),
var foo = "Hello";(function() { var bar = " World"; alert(foo + bar);})();alert(foo + bar);Питання: Що покажуть ці два alert?
Відповідь: “Hello World” и ReferenceError: bar is not defined
var foo = [];foo.push(1);foo.push(2);Питання: Чому дорівнює foo.length?
Відповідь: 2
var foo = {};foo.bar = 'hello';Питання: Чому дорівнює foo.length?
Відповідь: undefined
.end()?.get(), [], і .eq()?.bind(), .live(), і .delegate()?$ і $.fn? Що таке $.fn взагалі?$(".foo div#bar:eq(0)")Tập tin này chứa một số câu hỏi phỏng vấn lập trình viên front-end, có thể được sử dụng khi kiểm tra các ứng viên tiềm năng. Không khuyến khích sử dụng tất cả các câu hỏi ở đây trên cùng một ứng cử viên (sẽ mất hàng giờ đồng hồ). Chọn một vài mục từ danh sách này sẽ giúp bạn kiểm tra những kỹ năng mà bạn yêu cầu ở ứng viên đó.
Lưu ý: Hãy nhớ rằng nhiều câu trong đây là những câu hỏi kết thúc mở và có thể dẫn đến vài cuộc thảo luận thú vị cung cấp cho bạn nhiều thông tin về khả năng của một người hơn là một câu trả lời thẳng thắn.
doctype làm cái gì?application/xhtml+xml?data- có lợi cho cái gì?cookie, sessionStorage và localStorage.<script>, <script async> và <script defer>.<link> CSS giữa 2 thẻ <head></head> và các thẻ <script> JS ngay trước thẻ </body> về cơ bản là một ý tưởng tốt? Bạn có biết những trường hợp ngoại lệ nào khác không?srcset trong 1 tag img? Giải thích quá trình mà trình duyệt sẽ sử dụng khi phân tích nội dung của thuộc tính này.* { box-sizing: border-box; } sẽ làm điều gì? Những ưu điểm của nó là gì?display mà bạn có thể nhớ.position với giá trị: relative, fixed, absolute, hoặc có vị trí tĩnh (statically positioned element)?translate() hơn thay vì absolute positioning không, hoặc ngược lại? Và tại sao?this hoạt động trong JavaScriptfunction foo(){ }();.null, chứa undefined hoặc chưa được khai báo (undeclared) là gì?function Person(){}, var person = Person(), và var person = new Person()?.call và .apply là gì?Function.prototype.bind.document.write() khi nào?load và event DOMContentLoaded của document?== and === là gì?duplicate([1,2,3,4,5]); // [1,2,3,4,5,1,2,3,4,5]"use strict"; là gì? Những điểm lợi và hại khi sử dụng nó?for cho output từ 1 đến 100, trong đó output “fizz” thay cho số chia hết cho 3, “buzz” thay cho số chia hết cho 5 và “fizzbuzz” thay cho số chia hết cho cả 3 và 5.load? Event này có điểm bất lợi nào không? Bạn có biết cách thay thế nào khác, và tại sao bạn sẽ sử dụng chúng?foo sau đây: giữa function foo() {} và var foo = function() {}let, var hoặc const là gì?Câu hỏi: Giá trị của foo là gì?
var foo = 10 + '20';Câu hỏi: Đoạn code dưới đây sẽ xuất ra cái gì?
console.log(0.1 + 0.2 == 0.3);Câu hỏi: Bạn sẽ làm thế nào để hàm này hoạt động?
add(2, 5); // 7add(2)(5); // 7Câu hỏi: Giá trị nào được trả về từ dòng lệnh sau?
"i'm a lasagna hog".split("").reverse().join("");Câu hỏi: Giá trị của window.foo là gì?
( window.foo || ( window.foo = "bar" ) );Câu hỏi: Kết quả của 2 lệnh alert dưới đây là gì?
var foo = "Hello";(function() { var bar = " World"; alert(foo + bar);})();alert(foo + bar);Câu hỏi: Giá trị của foo.length là gì?
var foo = [];foo.push(1);foo.push(2);Câu hỏi: Giá trị của foo.x là gì?
var foo = {n: 1};var bar = foo;foo.x = foo = {n: 2};Câu hỏi: Những dòng code sau in ra những gì?
console.log('one');setTimeout(function() { console.log('two');}, 0);console.log('three');Tài liệu này được khởi đầu vào năm 2009 như là một sự cộng tác của @paul_irish @bentruyman @cowboy @ajpiano @SlexAxton @boazsender @miketaylr @vladikoff @gf3 @jon_neal @sambreed và @iansym.
Đã nhận được sự đóng góp từ hơn 100 developers.