Frontend
const { foo: bar, bar: foo } = { foo: 1, bar: 2 }; //foo //bar setTimeout(() => { console.log("timeOut"); }, 0); console.log(1); new Promise((resolve) => { console.log("Promise"); setTimeout(() => { console.log("timeOut2"); resolve(); }, 0); }) .then(() => { console.log("then1"); }) .then(() => { console.log("then2"); }); console.log(4); setTimeout(() => { console.log("timeOut3"); }, 0);
იქნება ეს გვერდი ინტერაქტიული ამ უსასრულო რიკურსიის დროს?
const X = { a: 1, b: 2, c: 3, d: 4 } function getProperty(obj, key) { // დავალება: ფუნქციის ტიპის განსაზღვრა return obj[key] } getProperty(X, 'a') // შეცდომა არაა getProperty(X, ' ') // შეცდომა: გასაღები არ არის ვალიდური გასაღები ობიექტისთვის X getProperty({ სახელი: 'Sergey' }, 'სახელი') // შეცდომა არაა
მოკლედ გვითხარით საკუთარ შესახებ, თქვენი შესაბამისი გამოცდილების და რომელ პროექტზე გსურთ ყველაზე მეტად გქონდეთ პატივი.
დამუშავებულხარ UI ბიბლიოთეკებთან? რა პლაგინები ან გაფართოებებია იქ?
რა გამოჩნდება კონსოლში, როდესაც typeof a და typeof b გამოიძახება გარედან ფუნქციის (IIFE) გამოყენებით, სადაც გამოიყენება var? როგორ შეიცვლება ქცევა მკაცრ რეჟიმში?
რომელ წესით ხორციელდება then, catch და finally დაპირების ჯაჭვში?
რა არის React.memo? შეიძლება მთელი აპლიკაცია ჩაასვათ memo-ში? რატომ არის ცუდი მეხსიერების გამოყენება ყველგან?
შეიძლება გქონდეთ კოდის მიმოხილვები სავალდებულო დამტკიცებებით? როგორ არის ორგანიზებული — ყველა მიმოხილავს ყველას, თუ მხოლოდ თავის ზონაში (ფრონტ/ბექი ცალკე)?
რა იყო შენი ყველაზე საინტერესო და რთული ტექნიკური დავალება — რაოდენობის მხრივ არა, არამედ ხარისხის მხრივ?
მოსათვლელია თანმიმდევრული სიმბოლოების რაოდენობა, მაგრამ უნიკალური სიმბოლოების გამოჩენის წესის შენარჩუნებით function countSymbols(str){ const alphabet = new Map(); for (const ch of str) { alphabet.set(ch, alphabet.get(ch) ? alphabet.get(ch) + 1 : 1) } return }
გთხოვთ, გვიამბოთ ბრაუზერში კრიტიკული რენდერინგის გზაზე: რა ხდება გვერდის გახსნის ან URL-ის შეყვანის შემდეგ?
მოცემულ კოდში console.log-ის გამოძახებები რა წესით შესრულდება სინქრონული კოდის, Promise-ის, შეცდომის მართვის და ტაიმერის შემთხვევაში?
მესამე JavaScript კოდის ფრაგმენტის თითოეულისთვის განსაზღვრეთ, რა გამოჩნდება კონსოლში და ახსენით პრიმიტივების, ობიექტების და მითითებების გადათქმების განსხვავებები.
როგორ არის ორგანიზებული რეაქტივობა Vue 3-ში? ისაუბრე ref და reactive-ზე.
რა არის code splitting და როგორ მუშაობს?
რომელ ფორმის ვალიდატორებთან მუშაობდით?
რა პრობლემებს ხედავთ ამ კოდში async/await-ის გამოყენებაში და როგორ უნდა გამოსწორდეს ეს?
/* ჩვენ გვაქვს ბილეთების ნაკადი შემდეგი ფორმატით: [ { from: 'ლონდონი', to: 'მოსკვა' }, { from: 'NY', to: 'ლონდონი' }, { from: 'მოსკვა', to: 'სანტ პეტერბურგი' }, ... ] ამ ბილეთებიდან შეიძლება აშენდეს ერთი, შეუფერხებელი მარშრუტი. მარშრუტში არ არის ბრუნვები ან გამეორებები. თქვენ უნდა დაწეროთ პროგრამა, რომელიც აბრუნებს ამავე ობიექტებს მარშრუტის მიხედვით. */ function getRoute(tickets = [], startCity) { // თქვენი კოდი აქ } console.clear() console.log(getRoute([ { from: 'ლონდონი', to: 'მოსკვა' }, { from: 'NY', to: 'ლონდონი' }, { from: 'მოსკვა', to: 'სანტ პეტერბურგი' }, ], 'NY')); /* [ { from: 'NY', to: 'ლონდონი' }, { from: 'ლონდონი', to: 'მოსკვა' }, { from: 'მოსკვა', to: 'სანტ პეტერბურგი' }, ] */
// 1 for (var i = 0; i < 3; i++) { setTimeout(() => console.log(i)) } // 2 console.log(i) var j = 10 console.log(j) // 3 console.log(k) const k = 10 console.log(k) // 4 var a = 2 var b = a b++ console.log(a) console.log(b) // 5 var c = [1, 2, 3] var d = c d.push(4) console.log(c)