Blogger Information
Blog 50
fans 0
comment 0
visits 31403
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
对象与数组的解构赋值和访问器属性
手机用户1580651468
Original
369 people have browsed it

对象与数组的解构赋值和访问器属性

一. 实例演示对象与数组的解构赋值

一)数组解构

1.代码如下

  1. // 一)数组解构
  2. [uname,email]=['杨过','123@qq.com'];
  3. console.log(uname,email);
  4. console.log('-----------------');
  5. // 更新
  6. [uname,email]=['小龙女','456@qq.com'];
  7. console.log(uname,email);
  8. console.log('-----------------');
  9. // 1.参数过多
  10. ;[uname,email,gender='女']=['潘金莲','789@qq.com'];
  11. console.log(uname,email,gender);
  12. console.log('-----------------');
  13. // 应用场景:交换两个数
  14. let x = 10
  15. let y = 20
  16. console.log(`x = ${x},y = ${y}`)
  17. ;[y,x]=[x,y]
  18. console.log(`x=${x},y=${y}`)
  19. console.log('-----------------');

2.演示的效果图

二)对象解构

1.代码如下

  1. // 二)对象解构(变量名===属性名)
  2. let {num,price}={num:2,price:5000}
  3. console.log(num,price)
  4. console.log('-----------------');
  5. ;({num,price}={num:5,price:6000})
  6. console.log(num,price)
  7. console.log('-----------------');
  8. // 应用场景1.克隆对象
  9. let lesson ={name:'ES6',score:88}
  10. console.log(lesson)
  11. console.log('-----------------');
  12. let {...obj}=lesson
  13. console.log(obj)
  14. console.log(obj===lesson)
  15. console.log('-----------------');
  16. console.log('-----------------');
  17. // 应用场景2.结构传参
  18. show =function({uname,email}){
  19. return `${uname}:(${email})`
  20. }
  21. let user={uname:'朱老师',email:'498668472@qq.com'}
  22. console.log(show(user));
  23. console.log('-----------------');

2.演示的效果图

二. 实例演示访问器属性,并描述与普通属性之间的区别与联系

一)访问器属性如下图可以基本全部看出


二)访问器属性与数据属性的区别与联系

1.数据属性

  1. 1value: 实际存储属性值的特性
  2. 2writable: 表示能否修改属性的value值。默认为true。如果设置为false则为只读属性
  3. 3enumerable: 表示是否能通过forin循环遍历到该属性。默认为true
  4. 4configurable: 表示是否能通过delete删除该属性,或者能否修改其他特性。默认为true,如果改为false,则属性的其他特性一旦定义就不可修改
  5. 5)数据属性的特性无法直接访问。使用Object.getOwnPropertyDesciptor方法可以查看指定对象、指定属性的特性

2.访问器属性

  1. 1)访问器属性没有valuewritable特性
  2. 2get:读取属性时自动调用的函数。如果不提供,表示不可读取受保护的属性值
  3. 3set: 写入属性值自动调用的函数。如果不提供,表示受保护的属性为只读属性
  4. 4enumerable: 表示是否能通过forin循环遍历到该属性。默认为true
  5. 5)configurable: 表示是否能通过delete删除该属性,或者能否修改其他特性。默认为true,如果改为false,则属性的其他特性一旦定义就不可修改
Correcting teacher:PHPzPHPz

Correction status:qualified

Teacher's comments:完成的不错, 总结的很好
Statement of this Website
The copyright of this blog article belongs to the blogger. Please specify the address when reprinting! If there is any infringement or violation of the law, please contact admin@php.cn Report processing!
All comments Speak rationally on civilized internet, please comply with News Comment Service Agreement
0 comments