js 对象解构

在 js 中,如果我们需要把一个对象里面的属性提取出来放到自定义的变量上,在不使用对象解构的情况下可能会写出这样的代码:

// 示例对象
let person = {
   
  name: "ec50n9",
  age: 19,
  job: "student"
};

// 挨个赋值
let personName = person.name,
    personAge = person.age,
    personJob = person.job;

这样写是没什么问题的,但是对比使用对象解构的写法,上面这种写法就略显复杂了

对象解构的基本用法

来看看使用了对象解构的写法:

// 上面的赋值代码变成了这样👇
let {
    name: personName, age: personAge, job: personJob } = person;

console.log(personName);  // "ec50n9"
console.log(personAge);   // 19

可以看到在对象解构的写法中,等号左边的写法就类似于一个对象,只不过属性名对应的不是值,而是将要赋值的变量名,下面这代码可能更直观些:

// 左边是解构,右边是对象
let {
    name: personName, age: personAge } = {
    name: "ec50n9", age: 19 };

我觉得可以把左边的对象解构语句理解成是一个填空的模板,js 只是在帮我们做填空题,这样一来,👇下面的这些对象解构的特性就好理解些了。

忽略部分属性

如果只想赋值 personNamepersonAge 变量的话,不写 job 就可以了:

let {
    name: personName, age: personAge } = person;

简写语法

如果想让变量直接使用属性的名称,可以使用简写语法⬇️

let {
    name, age } = person;
console.log(name); // "ec50n9"
console.log(age);  // 19 

定义默认值

有时候,可能被解构的对象中没有被引用的属性,可以通过下面这种方法来定义默认值,也就是如果对象中没有对应属性,就使用默认值:

let {
    name
  • 5
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值