Maison >interface Web >js tutoriel >Lodash - un outil puissant javascript

Lodash - un outil puissant javascript

Barbara Streisand
Barbara Streisandoriginal
2024-11-18 04:54:02254parcourir

Lodash - a javascript power tool

Lodash, un remplacement léger de Underscore.js, est une bibliothèque d'utilitaires JavaScript populaire qui simplifie les tâches de programmation courantes. Découvrez les 20 meilleures fonctions Lodash ci-dessous pour améliorer vos compétences JavaScript :


1. _.obtenir

  • Récupère en toute sécurité une propriété imbriquée d'un objet, évitant ainsi les erreurs si la propriété n'existe pas.
const obj = { a: { b: { c: 42 } } }; _.get(obj, 'a.b.c', 'default'); // 42

2. _.set

  • Définit la valeur d'une propriété imbriquée dans un objet, créant des propriétés intermédiaires si elles n'existent pas.
const obj = {}; _.set(obj, 'a.b.c', 42); console.log(obj); // { a: { b: { c: 42 } } }

3. _.cloneDeep

  • Crée une copie complète d'un objet ou d'un tableau.
const arr = [{ a: 1 }]; const deepClone = _.cloneDeep(arr);

4. _.debounce

  • Retarde l'exécution d'une fonction jusqu'à ce qu'un délai spécifié se soit écoulé depuis son dernier appel.
const log = _.debounce(() => console.log('Debounced!'), 300); window.addEventListener('resize', log);

5. _.accélérateur

  • Garantit qu'une fonction est exécutée au plus une fois dans un intervalle de temps spécifié.
const log = _.throttle(() => console.log('Throttled!'), 1000); window.addEventListener('scroll', log);

6. _.isEmpty

  • Vérifie si une valeur est un objet vide, un tableau ou une valeur fausse.
_.isEmpty([]); // true _.isEmpty({}); // true _.isEmpty(''); // true

7. _.merge

  • Fusionne profondément deux ou plusieurs objets, combinant leurs propriétés.
const obj1 = { a: { b: 1 } }; const obj2 = { a: { c: 2 } }; _.merge(obj1, obj2); // { a: { b: 1, c: 2 } }

8. _.choisir

  • Crée un objet composé des propriétés sélectionnées.
const obj = { a: 1, b: 2, c: 3 }; _.pick(obj, ['a', 'c']); // { a: 1, c: 3 }

9. _.omettre

  • Crée un objet excluant les propriétés spécifiées.
const obj = { a: 1, b: 2, c: 3 }; _.omit(obj, ['b']); // { a: 1, c: 3 }

10. _.uniq

  • Supprime les valeurs en double d'un tableau.
_.uniq([1, 2, 2, 3]); // [1, 2, 3]

11. _.groupBy

  • Regroupe les éléments d'un tableau en fonction d'un critère fourni.
_.groupBy([6.1, 4.2, 6.3], Math.floor); // { '4': [4.2], '6': [6.1, 6.3] }

12. _.sortBy

  • Trie un tableau d'objets en fonction de propriétés ou de critères spécifiques.
const users = [{ name: 'Tom', age: 30 }, { name: 'Jerry', age: 20 }]; _.sortBy(users, 'age'); // [{ name: 'Jerry', age: 20 }, { name: 'Tom', age: 30 }]

13. _.map

  • Crée un nouveau tableau en transformant chaque élément d'une collection.
_.map([1, 2, 3], n => n * 2); // [2, 4, 6]

14. _.filtre

  • Crée un tableau avec des éléments qui satisfont à la condition fournie.
_.filter([1, 2, 3, 4], n => n % 2 === 0); // [2, 4]

15. _.trouver

  • Trouve le premier élément qui satisfait une condition.
_.find([1, 2, 3, 4], n => n > 2); // 3

16. _.aplatir

  • Aplatit un tableau imbriqué en un tableau à un seul niveau.
_.flatten([1, [2, [3, [4]]]]); // [1, 2, [3, [4]]]

17. _.flattenDeep

  • Aplatit un tableau imbriqué en un tableau entièrement à un seul niveau.
_.flattenDeep([1, [2, [3, [4]]]]); // [1, 2, 3, 4]

18. _.différence

  • Renvoie les valeurs du premier tableau qui ne sont pas dans le deuxième tableau.
const obj = { a: { b: { c: 42 } } }; _.get(obj, 'a.b.c', 'default'); // 42

19. _.morceau

  • Divise un tableau en groupes de la taille spécifiée.
const obj = {}; _.set(obj, 'a.b.c', 42); console.log(obj); // { a: { b: { c: 42 } } }

20. _.isEqual

  • Effectue une comparaison approfondie pour déterminer si deux valeurs sont équivalentes.
const arr = [{ a: 1 }]; const deepClone = _.cloneDeep(arr);

Continuez à apprendre et à vous amuser !

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn