Sobes.tech

Frontend

Պատմիր Node.js/Express-ի վրա հիմնված լիակատար հավելվածի մասին՝ վճարային էջերի բրենդավորումը ավտոմատացնելու համար։

Middle
251

Առաջադրանք 6: Գրեք ընդհանուր ֆունկցիա, որը ընդունում է օբյեկտ, որի պարտադիր հատկությունը name է տիպի string և վերադարձնում է օբյեկտի անունով տող։

Middle
169

Ինչպե՞ս եք աշխատել Git-ով. Ի՞նչ էր շղթայի հոսքը, ինչպես եք թողարկում, ինչպես եք անում hotfix?

Middle
166

Ի՞նչ է տարբերությունը any և unknown-ի միջև TypeScript-ում: Ինչու՞ linter-ը չի բողոքում any-ի համար, բայց պահանջում է type սահմանափակում for unknown?

Middle
162

/** * Առաջադրանք 4: Տվյալ `MaybeProps` տիպը փոխեք՝ դարձնելով նրա բոլոր հատկությունները պարտադիր: */ type MaybeProps = { a?: number; b?: string; };

Middle
148

Առաջադրանք 2: Ստորև ներկայացված են մի քանի Todo ինտերֆեյս հայտարարություններ, բացատրեք, թե ինչ է տեղի ունենում, երբ դրանք նույն շրջանակում են: քննարկեք, թե ինչպես է TypeScript-ը վերաբերվում դրանց և լրացրեք `myTodo` օբյեկտը՝ բավարարելու միաձուլված Todo ինտերֆեյսի պահանջները: ```typescript interface Todo { title: string; dueDate: Date; } interface Todo { description: string; completed: boolean; } interface Todo { priority: 'high' | 'medium' | 'low'; completed: string; } const myTodo: Todo = {}; ```

Middle
145

Առաջադրանք 7: Կան Alien և Human տիպեր, որոնք միավորվում են Person տիպում: Գրեք checkAlien ֆունկցիան, որը ստուգում է, արդյոք փոխանցված Person-ը արտասահմանցի է: Թողեք TypeScript-ի սխալը, երբ մուտք եք գործում isAlien հատկությանը։

Middle
141

/** * Առաջադրանք 3: Վերլուծեք ստորև ներկայացված ֆունկցիան և ուղղեք ցանկացած սխալ։ բացատրեք `never` տիպի դերը TypeScript-ում: */ function throwError(): never { throw new Error('Սխալ տեղի ունեցավ'); } /** * Առաջադրանք 4: Փոխակերպեք տրված `MaybeProps` տիպը՝ դարձնելով նրա բոլոր հատկությունները պարտադիր: */ type MaybeProps = { a?: number; b?: string; }; /** * Առաջադրանք 5: Ստեղծեք ընդհանուր `Container` տիպ, որը պարունակում է միայն `value` հատկությունը: * `value`-ի տիպը պետք է սահմանափակվի `string` կամ `number`-ով: */ type Container<T> = { value: T; };

Middle
138

Դու ունեցել ես բացասական փորձ թիմում, օրինակ՝ ինտենսիվ վեճեր կոդի վերանայումում: Ինչպե՞ս կվարվեիր այդպիսի իրավիճակում:

Middle
138

Պատմիր Astro-ի օգտագործման մասին՝ ինչպես ընտրեցին, ինչպես կառավարում եք բովանդակությունը։

Middle
131

/** * Առաջադրանք 1: Գեներիկներ և Կլիչի Տիպի Անվտանգություն * Ստեղծեք `getProperty` ֆունկցիա, որը ընդունում է օբյեկտ և կլիչ: * Օգտագործեք գեներիկներ՝ ապահովելու համար, որ ֆունկցիան տիպային անվտանգ է և կլիչը գոյություն ունի օբյեկտում: */ function getProperty<T extends Record<string, unknown>, K extends keyof T>(obj: T, key: K): T[K] { return obj[key]; } getProperty('str', 'toString') /** * Առաջադրանք 2: Ստորև ներկայացված են մի քանի Todo ինտերֆեյս հայտարարություններ, բացատրեք, թե ինչ է տեղի ունենում, երբ դրանք նույն տարածքում են: * Քննարկեք, թե ինչպես է TypeScript-ը նրանց վերաբերվում և լրացրեք `myTodo` օբյեկտը՝ բավարարելու համար միացրած Todo ինտերֆեյսի պահանջները: */ interface Todo { title: string; dueDate: Date; } interface Todo { description: string; completed: boolean; }

Middle
129

Խոսեք կուկի վրա հիմնված հաստատման և երկփուլային հաստատման մասին անձնական կաբինետում։

Middle
119

Ինչու եք որոշել աշխատանք փնտրել և ինչու մեզ մոտ?

Middle
114