How to destructure an object to an already defined variable
By Flavio Copes
Learn how to destructure an object into already declared variables in JavaScript using the parentheses assignment syntax, with a leading semicolon for safety.
~~~
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())~~~
Related posts about js: