How to destructure an object to an already defined variable
I had the need to assign the result of a function call to a variable already defined. The function returned an object:
function test() {
return {
one: 1,
two: 2
}
}
I thought I’ll just use object destructing, like this:
const { one, two } = test()
But I had two
already defined in my code (because of scoping issues) and I couldn’t redeclare it:
let two
//...
const { one, two } = test() //ERROR
Simple way would be to have
const result = test()
two = result.two
const { one } = result
Or, I could also declare one
as let
and use this syntax with parentheses (adding ;
before them to prevent JS to freak out because I don’t use semicolons, any line starting with (
must start with a semicolon, simple rule)
let one, two
;({ one, two } = test())
→ 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