使用解构赋值实现对象的解构 marriageStaus 属性赋值给变量 marriageStaus(如果属性缺失则取默认值 false)
时间: 2024-05-13 22:14:37 浏览: 16
可以使用解构赋值语法来实现对象的解构。具体实现如下:
```
const { marriageStaus = false } = { marriageStaus: true };
console.log(marriageStaus); // true
```
上面的代码中,我们使用了解构赋值语法,将对象 `{ marriageStaus: true }` 中的 `marriageStaus` 属性赋值给变量 `marriageStaus`。同时,我们还设置了默认值为 `false`,以防属性缺失的情况发生。最终输出的结果是 `true`,因为对象中存在 `marriageStaus` 属性且其值为 `true`。
相关问题
如何通过解构赋值将一个对象的部分属性值赋值给另一个对象
可以使用解构赋值和对象扩展运算符来实现将一个对象的部分属性值赋值给另一个对象。例如:
```
const obj1 = { name: 'Alice', age: 23, gender: 'female' };
const { age, ...obj2 } = obj1;
console.log(age); // 23
console.log(obj2); // { name: 'Alice', gender: 'female' }
```
在上面的例子中,我们用解构赋值从 `obj1` 中提取 `age` 属性,并将剩余的属性(`name` 和 `gender`)放入一个新的对象 `obj2` 中。这样就可以将 `obj1` 的部分属性值赋值给 `obj2` 了。
对象解构赋值时默认值
对象解构赋值时可以设置默认值,当解构的值为undefined时,会使用默认值。例如:
```javascript
const {a = 1, b = 2} = {a: 3};
console.log(a, b); // 输出:3 2
```
在上面的例子中,由于对象中只有a属性,因此b的值为undefined,但是由于设置了默认值为2,因此b的值为2。
另外,需要注意的是,当解构的值为null时,不会使用默认值,而是直接赋值为null。例如:
```javascript
const {a = 1, b = 2} = {a: null};
console.log(a, b); // 输出:null 2
```
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)