The destructuring assignment is a new syntax to get a part of an array or of an object and assign it to a variable in a more convenient way. It is also possible to set default values when using destructuring assignment.
const user = {
name: 'Zaiste',
}
const { name, age } = user;
console.log(age);undefinedconst creates variables, so in the previous example age is undefined.
const user = {
name: 'Zaiste',
}
const { name = 'Basia', age = 21 } = user;
console.log(name);
console.log(age);Zaiste
21Default values in destructuring assignement only work if the variables either
don't exist or their value is set to undefined. Any other value, including
null, false and 0, bypasses the default values in the destructuring
statement.
const dummy = {
name: undefined
}
const { name = 'Basia' } = dummy;
console.log(name)Basiawhile for null:
const dummy = {
name: null
}
const { name = 'Basia' } = dummy;
console.log(name)nullYou can combine default values with renaming in the destructuring assignment.
const user = {
name: 'Zaiste',
}
const { name: author = 'Basia', age = 21 } = user;
console.log(author);ZaisteThis creates author variable, while name is just a label to specify the
field to destruct against - it doesn't exist as a separate variable.