Կարո՞ղ է ներմուծել FSD-ի մեկ մակարդակից մյուսին նույն մակարդակում։
Frontend
Պատմեք, թե ինչպես է աշխատում Event Emitter ձևանմուշը և արդյոք ունեցել եք դրա հետ փորձ, մասնավորապես Angular-ում։
Ի՞նչ խնդիրներ է լուծում dependency injection-ը Angular-ում և ինչ առավելություններ է տալիս ծառայությունների տրամադրումը ծրագրի և կոմպոնենտների մակարդակներում։
Պարզ սլոտ մեքենայի իրականացման համար՝ "մեկ ձեռքի բանդիտ": - Իրականացրեք երեք ռուլետ (համարներով 0-ից 9, որոնք փոխվում են հերթականությամբ 0,1,2,...9,0,1,2...) - Յուրաքանչյուր onRoll-ի ժամանակ ռուլետում հայտնվում է հաջորդ արժեքը - Եթե բոլոր երեք թվերը համընկնեն կանգնելուց հետո, ասում ենք, որ հաղթել է - Դադարեցման ժամանակ անջատեք կոճակը Ֆիզիկական մոդելը արդեն իրականացված է runSpinner մեթոդում, բայց այն ոչ մի կապ չունի թվերի հետ: Խորհուրդ՝ սկսեք իրականացնել առաջին ռուլետից, ապա ավելացրեք մյուսները ըստ նույնականության։
Ինչու հաղթանակը սխալ հաշվվում է, նույնիսկ եթե տրորակների արժեքները տարբեր են: Գտեք բագի պատճառը, որը կապված է վիճակի ասինխրոն թարմացման ռեյս պայմանների հետ։
Եթե call-ի միջոցով առանց կոնտեքստ փոխանցելու, խիստ ռեժիմում (strict mode) և առանց դրա, ինչ կլինի this-ի արժեքը fn-ի ներսում?
React առաջադրանք (3 ենթադրություն): 1) Տեղեկացրեք օգտագործողի խմբագրման ձևը — երբ սեղմում եք ցուցակի մեջ օգտագործողի անունը, անունը պետք է տեղադրվի խմբագրության ձևի ներսում գտնվող input դաշտում։ 2) Խմբագրության ձևը չպետք է վերաարտադրվի որոնման դաշտում տեքստ մուտքագրելու ժամանակ (optimizasyon with React.memo): 3) Երբ օգտագործողը ընտրվում է ցուցակից, որոնման դաշտը պետք է վերականգնվի։
Ներկայացրեք սառը և տաք Observable-ների տարբերությունը։
Բաժանեք հավելվածը Feature-Sliced Design (FSD) ճարտարապետության համաձայն — նկարագրեք App, Pages, Widgets, Features, Entities շերտերը.
Երեք նոր տեսակ կա: Պետք է ստեղծել նոր ընդհանուր տեսակ, որը կպարունակի այդ տեսակների բոլոր դաշտերը (օգտագործելով union):
Կա՞ն երեք տարբեր i, j, k ցուցանիշներ, որոնց համար a[i]+a[j]+a[k] գումարը ավարտվում է m թվով: Օրինակ, m = 3 համար solve([20, 22, 19, 84]) => true // 20 + 84 + 19 = 123 solve([1,2,3]) => false
Ի՞նչ է Awaited utility type-ը TypeScript-ում։
Ֆունկցիան սիմուլացնում է բրենդի պտտումը աստիճանաբար կանգառով - օգտագործեք onRoll պտտման անիմացիայի համար (փոխել ընթացիկ արժեքը բրենդում) - և onStop՝ երբ բրենդը վերջացնի պտտվելը, տեղեկացնելու համար մասալ runSpinner( () => setValue(v => ++v % 10), () => console.log('finished') )
Փորձեք սիմուլացնել իրավիճակը, որպեսզի բոլոր երեք թվերը ռոլիկների վրա համընկնեն և ստուգեք, որ հաղթանակի հաղորդագրությունը ցուցադրվում է։
Ի՞նչ տարբերություն կա ChangeDetectorRef.markForCheck() և detectChanges() միջև։
Կոդը ուղղեք այնպես, որ կոճակին սեղմելիս միայն App-ը վերանորոգվի, իսկ տեքստը input-ում մուտքագրելիս՝ միայն Parent-ը (չի լինի Child-ի ավելորդ վերանորոգում):
Դու գիտե՞ք Web Vitals մետրիկաները: Ինչպե՞ս կարելի է բարելավել CLS (Cumulative Layout Shift):
Ինչ է փոխվելու տիպի տրամաբանությունում, եթե փոխենք `extends`-ը `=`-ով (սահմանել գեներիկի համար նախնական արժեք)?
Ինչու եք ընտրել IndexedDB-ը տեղական պահեստավորման համար տվյալների բազաներում, այլ ոչ թե ինչ-որ այլ բան? Ինչպիսի այլընտրանքներ կան?
Ստեղծեք նոր տեսակ, հիմնված PartialDelivery-ի վրա, որը ներառում է միայն name և address դաշտերը (Pick):