Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // 1. add props
- const user = { id: 100, name: 'Howard Moon'} // { id: 100, name: 'Howard Moon' }
- const userWithPass = { ...user, password: 'Password!' } // { id: 100, name: 'Howard Moon', password: 'Password!'
- // 2. merge obj
- const part1 = { id: 100, name: 'Howard Moon' }
- const part2 = { id: 100, password: 'Password!' }
- const user = { ...part1, ...part2 } // { id: 100, name: 'Howard Moon', password: 'Password!' }
- // 3. exclude props
- const noPassword = ({ password, ...rest }) => rest
- const user = { id: 100, name: 'Howard Moon', password: 'Password!' }
- noPassword(user) // { id: 100, name: 'Howard moon' }
- // 4. dynamically exclude props
- const user = { id: 100, name: 'Howard Moon', password: 'Password!' }
- const removeProperty = prop => ({ [prop]: _, ...rest }) => rest
- const removePassword = removeProperty('password')
- const removeId = removeProperty('id')
- removePassword(user) // { id: 100, name: 'Howard Moon' }
- removeId(user) // { name: 'Howard Moon', password: 'Password!' }
- // 5. organize props
- const user = { name: 'Howard Moon', password: 'Password!', id: 100 }
- const organize = object => ({ id: undefined, ...object }) // move id to the first property
- organize(user) // { id: 300, password: 'Password!', name: 'Howard Moon' }
- const organize = ({ password, ...object }) => ({ ...object, password }) // move password to last property
- organize(user) // { name: 'Howard Moon', id: 100, password: 'Password!' }
- // 6. default props
- const user = { id: 200, name: 'Vince Noir' }
- const user2 = { id: 400, name: 'Bollo', quotes: ["I've got a bad feeling about this..."] }
- const setDefaults = ({ quotes = [], ...object}) => ({ ...object, quotes })
- setDefaults(user) // { id: 200, name: 'Vince Noir', quotes: [] }
- setDefaults(user2) // { id: 400, name: 'Bollo', quotes: ["I've got a bad feeling about this..."] }
- // 7. rename props
- const renamed = ({ ID, ...object }) => ({ id: ID, ...object })
- const user = { ID: 500, name: 'Vince Noir' }
- renamed(user) //=> { id: 500, name: 'Vince Noir' }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement