Кадом усулҳои статикии Promise-ро медонӣ? Дар бораи онҳо нақл кун.
Frontend
Ёзувчи профилини олиш учун getUserProfile номли функция ёзинг, у userId ни аргумент сифатида олади ва API нуқтаси "[link]" дан фойдаланувчи профилини олади. Функция, агар фетч муваффақиятли бўлса, фойдаланувчи профилини лог қилади, ва агар муваффақиятсиз бўлса, хатолик хабарини лог қилади.
Set чист? Вақте ки мо new Set-ро ҳамчун аргумент даъват мекунем, чӣ чизҳоро метавонем гузорем?
import React, { useState, useEffect, useLayoutEffect } from 'react'; export default () => { const [count, setCount] = useState(0); useLayoutEffect(() => console.log("ҳар рендер 1")); console.log("ҳар рендер 2"); useEffect(() => console.log("ҳар рендер 3")); return ( <button onClick={() => setCount((prevProps) => ++prevProps)}> Қўшиш </button> ); } // монтаж -> ҳар рендер 2, ҳар рендер 1, ҳар рендер 3 // янгилаш -> ҳар рендер 2, ҳар рендер 1, ҳар рендер 3 // демонтаж 4
Оё let ва const (hoisting) боло мегирад? Вақте ки ба онҳо пеш аз эълон дастрасӣ пайдо мекунем, чӣ мешавад?
const S = { id: 1, name: "Ivan", age: "39", tel: [phone] }; function getParam(obj, key) { return obj[key]; } getParam(S, "tel"); getParam(S, "job");
Тавсиф кунед, ки дар аввалин рендер чӣ мешавад — дар кадом тартиб console.log нишон дода мешавад. Пас аз клик чӣ мешавад?
Чӣ тавр аст, ки пӯшида мешавад?
WeakSet چیست؟
Тавсия медиҳам, ки як татбиқи абстрактии компонент Child бо мемоизация тавассути React.memo нависед. Дуюм аргумент, ки React.memo қабул мекунад, чист?
импорт React, { useState, useEffect, useRef, useContext, useReducer, useMemo } из 'react'; const someFunc = (arr) => { return [...arr].sort((a, b) => a - b); }; const LazyInit = (props) => { const [arr, setArr] = useState(() => someFunc(props.arr)); const onClick = () => { setArr((prev) => prev.concat(prev.length + 1)); }; return ( <> <button onClick={onClick}> Инкремент </button> <ul> {arr.map((n, index) => <li key={index}>{n}</li>)} </ul> </> ); }; export default () => <LazyInit arr={[1, 2, 3]} />; --- Дар сӯҳбат дар тарафи рост дар бораи: - Истифодаи TypeScript бо генерикҳо: "<T extends object, K extends keyof T>" - Санҷидани он ки маълумот бо сатр аст, бо истифода аз муҳофизати навъи: "isString(data: unknown): data is string { ... }" - Истифодаи useState бо функсия барои пешгирӣ аз такрор кардани иҷро дар ҳар рендер: ``` const [state, setState] = useState(getComplexData); // ё const [state, setState] = useState(() => getComplexData()); ``` - Функсияе, ки ба useState дода мешавад, танҳо як бор дар вақти монтажи компонент иҷро мешавад. - Ҳушдор дар бораи тағир додани мустақим дар ҳолати 11 бо prev.concat. --- Вазифаи техникӣ ин аст, ки коди компонент React-ро таҳлил ва эҳтимолан ислоҳ ё оптимизатсия кунад, махсусан дар бораи: - Инициализатсияи пӯшида ва дуруст бо useState. - Ҳазм кардани тағироти мустақим ба ҳолат. - Фаҳмидани генерикҳо ва муҳофизони навъи TypeScript. - Боварӣ ҳосил кардан, ки компонент ҳолати худро дуруст навсозӣ мекунад, вақте ки тугма пахш мешавад.
Фарқи байни Map ва WeakMap чист?
Дор дурусти маълумот манбаъҳои мавҷуданд, ки маълумоти ҳамонро бармегардонанд. Чӣ гуна ҷавоб аз тезтарин гирифтани мумкин аст?
дар бораи hook useState дар React гап зан.
Чаро бо функсияҳои ишоракарда наметавон бо конструктораи new кор кард?
Чӣ гуна функсияҳо дар JavaScript эҷод мешаванд? Кадом роҳҳо барои эҷоди функсияҳо ҳастанд ва онҳо чӣ фарқ доранд?
Кадом намудҳои кӯмакии TypeScript-ро дар кор истифода мебарӣ? Дар бораи Record, Pick, Omit, Partial, Required, Parameters, Exclude, Extract гап зан.