En JavaScript / Typescript,
Quelle est la version courte pour déstructurer puis attribuer un nouvel objet comme ceci:
const payload: MyPayload = { a: 1, b: 2, c: 3, d: 4, e: 5 } // Destruct const { a, c, e } = payload; // New Obj const newPayload = { a, c, e };
3 Réponses :
Vous pouvez effectuer une affectation de déstructuration avec l'objet et les propriétés abrégées pour un nouvel objet.
const getParts = ({ a, c, e }) => ({ a, c, e }), payload = { a: 1, b: 2, c: 3, d: 4, e: 5 }, parts = getParts(payload); console.log(parts);
Je suppose que cela ne se compilera pas si l'un de ces accessoires est facultatif dans MyPayload
.
Vous pouvez créer l'objet pendant la déstructuration en utilisant reste d'objet :
const payload = { a: 1, b: 2, c: 3, d: 4, e: 5 } const { b, d, ...newPayload } = payload console.log(newPayload)
Vous pouvez utiliser IIFE
const payload = { a: 1, b: 2, c: 3, d: 4, e: 5 } const obj = (({a,c,e}) => ({a,c,e}))(payload) console.log(obj)