Τι κάνει ο τελεστής in στο TypeScript;
Frontend
Πες μου για το useCallback — σενάριο χρήσης, γιατί χρειάζεται;
Μίλησε για τη δουλειά με φόρμες στο React: ελεγχόμενα και μη ελεγχόμενα συστατικά, πλεονεκτήματα και μειονεκτήματα κάθε προσέγγισης.
const LiveSearch = () => { const [inputValue, setInputValue] = useState('') const onInputChange = (e) => { setInputValue(e.target.value) search(e.target.value) } return ( <div> <input value={inputValue} onChange={onInputChange} type="text" /> </div> ) } <span> Αναζήτηση: <LiveSearch /> </span>
Εργασία: περιήγηση σε ένα δέντρο αντικειμένων (κάθε αντικείμενο έχει πεδία value και elements) και υπολογισμός του αθροίσματος όλων των τιμών. Πώς θα το υλοποιούσες;
Έχετε εργαστεί ποτέ με Blob; Πώς δημιουργείτε έναν σύνδεσμο για λήψη ενός δυναμικά δημιουργούμενου αρχείου;
const X = { a: 1, b: 2, c: 3, d: 4 } function getProperty(obj, key) { // Εργασία: τύπος της συνάρτησης return obj[key] } getProperty(X, 'a') // χωρίς σφάλμα getProperty(X, ' ') // σφάλμα: το κλειδί δεν είναι έγκυρο για το αντικείμενο X getProperty({ name: 'Sergey' }, 'name') // χωρίς σφάλμα
Μίλησέ μου για τα στάδια του κύκλου ζωής των React-συστατικών
// Δεδομένα από τον διακομιστή σχετικά με την τιμή του προϊόντος έχουν ληφθεί με τη μορφή: // 12345678 (η τιμή μπορεί να είναι οποιαδήποτε, αλλά στο εύρος από 1 έως [phone]) // Πρέπει να γράψετε μια συνάρτηση που θα μετατρέπει την τιμή σε μια μορφοποιημένη συμβολοσειρά ως εξής: // 12'345'678
Τι είναι το React.memo; Πότε εφαρμόζεται το useCallback;
function sum(a, b) { return a + b; } function memo() {}
import React, { useState, useEffect, useRef, useContext, useReducer, useMemo } from 'react'; export default () => { const [count, setCount] = useState(0); useLayoutEffect(() => console.log("κάθε απόδοση 1")); console.log("κάθε απόδοση 2"); useEffect(() => { console.log("κάθε απόδοση 3"); return () => { console.log(4); }; }, [count]); return ( <button onClick={() => setCount((prevProps) => ++prevProps)}> Αύξηση </button> ); }
Τι είναι η λειτουργία καθαρισμού (cleanup) στο useEffect; Πότε εκτελείται; Γράψτε την στο useEffect.
const { foo: [bar], bar: [{ baz: foo }] } = { foo: [1], bar: [{ baz: 3 }] } console.log(bar) console.log(foo) //
Μίλησέ μου για το Virtual DOM και τον μηχανισμό reconciliation στο React. Πώς βελτιστοποιεί το React τη σύγκριση των δέντρων;
Πώς υλοποιείται η περιήγηση σε δέντρο χωρίς αναδρομή; Ποια δομή δεδομένων βοηθά;
Πώς γράφεις μια συνάρτηση που επιστρέφει μια υπόσχεση που λύνεται σε ένα δευτερόλεπτο;
Τι συμβαίνει αν αλλάξει ο τύπος του συστατικού; Θα βοηθήσει ένα ίδιο κλειδί στη διατήρηση της κατάστασης;
const SomeElement = ({ hasData }) => { if (hasData) { return <div> <DataElement /> <SomeImportantElement /> </div> } return <div> <SomeImportantElement /> </div> }
let x = 5; (function () { console.log(x); let x = 0; })()