Skip to content

How to copy the properties of an inner object to the outer

Problem: I had a tweet object that for some reason related to the architecture of the app contained the actual tweet data into another object assigned to its data property.

Imagine this:

let tweet = {
  data: {
    id: 1,
    content: 'test'
  }
}

I wanted to move those inner properties on the top level object:

let tweet = {
  id: 1,
  content: 'test'
}

without manually copying those properties over, because the minute I add another property, I introduce a bug.

So here’s what I did:

tweet = Object.assign(tweet, tweet.data)

It’s the same technique you can use to copy properties to another object, but applied in a slightly different way.


→ Get my JavaScript Beginner's Handbook

I wrote 21 books to help you become a better developer:

  • HTML Handbook
  • Next.js Pages Router Handbook
  • Alpine.js Handbook
  • HTMX Handbook
  • TypeScript Handbook
  • React Handbook
  • SQL Handbook
  • Git Cheat Sheet
  • Laravel Handbook
  • Express Handbook
  • Swift Handbook
  • Go Handbook
  • PHP Handbook
  • Python Handbook
  • Linux Commands Handbook
  • C Handbook
  • JavaScript Handbook
  • Svelte Handbook
  • CSS Handbook
  • Node.js Handbook
  • Vue Handbook
...download them all now!

Related posts that talk about js: