Transformer les propriétés d'un objet avec JavaScript

Beginner

This tutorial is from open-source community. Access the source code

Introduction

Dans ce laboratoire, nous allons explorer la fonction transform en JavaScript qui nous permet d'appliquer une fonction spécifiée à un accumulateur et à chaque clé d'un objet. En utilisant Object.keys() et Array.prototype.reduce(), nous pouvons facilement itérer sur chaque clé d'un objet et effectuer la transformation souhaitée. Ce laboratoire vous procurera une expérience pratique avec cette fonction utile et démontrera ses applications pratiques en programmation JavaScript.

Transformation d'objet

Pour commencer à pratiquer la programmation, ouvrez le Terminal/SSH et tapez node.

La fonction transform applique une fonction spécifiée à un accumulateur et à chaque clé de l'objet, de gauche à droite. Voici comment l'utiliser :

  • Utilisez Object.keys() pour itérer sur chaque clé de l'objet.
  • Utilisez Array.prototype.reduce() pour appliquer la fonction spécifiée à l'accumulateur donné.
const transform = (obj, fn, acc) =>
  Object.keys(obj).reduce((a, k) => fn(a, obj[k], k, obj), acc);

Voici un exemple :

transform(
  { a: 1, b: 2, c: 1 },
  (r, v, k) => {
    (r[v] || (r[v] = [])).push(k);
    return r;
  },
  {}
); // { '1': ['a', 'c'], '2': ['b'] }

Sommaire

Félicitations ! Vous avez terminé le laboratoire Transformation d'objet. Vous pouvez pratiquer d'autres laboratoires sur LabEx pour améliorer vos compétences.