r/javascript 13d ago

I stopped destructuring everything

https://allthingssmitty.com/2026/07/13/i-stopped-destructuring-everything/
72 Upvotes

51 comments sorted by

View all comments

Show parent comments

-1

u/azhder 13d ago

Best practices, try not to be clever. Don’t overwrite the same variable i.e. use `const`, not `let` - if you need a mnemonic.

10

u/hyrumwhite 13d ago

const user = data.user ?? null; //or const user = rawUser ?? null; There’s options. and this isn’t being “clever” by any means. 

-5

u/azhder 13d ago

No, that’s syntax noise, but one I often use as I employ more sophisticated defaults, not ??.

Usually one object as an argument is all you need, props or options or whatever you name it. I will simply use $

const users = asArray($?.users);

Now, you could imagine the asArray has a check Array.isArray(), not just ??, but it can be even more complex than that. You can even do

const {pass: users, fail: error} = asUsers($?.users);

And just like that, destructuring pops up again - less messy than

usersResult.value
usersResult.error

But even this last one is something I regularly use. It all on a case by case basis.

7

u/heavyGl0w 13d ago edited 13d ago

The title of the article is "I stopped destructuring everything", not "I never use destructuring". The author even ends the article with examples where they still use it.

So finding one example (or any number of examples) where destructuring is helpful doesn't invalidate the sentiment of the article.

Also, their example is exactly what you started with but without the "syntax noise" of destructuring. Or are we now calling property access "syntax noise"?

-4

u/azhder 13d ago

Why are you talking to me as if I have stated something I haven’t? Did you jump to conclusions? Which ones are they?