Sobes.tech

Frontend

Lors de l'optimisation du chargement d'une application frontend lourde avec 150 petites icônes, faut-il combiner les icônes en une seule sprite ou utiliser le CSS-inlining avec HTTP/2 ou HTTP/3 ?

139

Imaginez une file d'attente de macro-tâches avec cinq `setTimeout`, et des micro-tâches ajoutant infiniment de nouvelles micro-tâches, par exemple via une récursion `Promise.resolve().then()`. Que se passera-t-il avec l'interface et ces cinq timeouts s'exécuteront-ils un jour ? Pourquoi ?

118

L'utilisateur tape rapidement dans le champ de recherche. Quelle est la différence entre `debounce`, `throttle` et `AbortController` du point de vue UX et charge réseau/backend ? Lequel est préférable pour la recherche en direct ?

118

Implémentez une fonction `debounce` qui prend en charge une invocation immédiate au début d'une série d'événements (`leading`), une invocation en fin de série par défaut, et une méthode `debounceFunc.cancel()` pour annuler l'appel programmé.

118

Implémentez une fonction simplifiée `reactive(object)` qui imite Vue 3 : lors de la lecture d'une propriété, appelez `track(target, key)`, et lors de la modification d'une propriété, appelez `trigger(target, key)`.

108