博主信息
博文 50
粉丝 0
评论 0
访问量 47988
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
对象与数组的解构赋值和访问器属性
手机用户1580651468
原创
624人浏览过

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

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

一)数组解构

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,则属性的其他特性一旦定义就不可修改
批改老师:PHPzPHPz

批改状态:合格

老师批语:完成的不错, 总结的很好
本博文版权归博主所有,转载请注明地址!如有侵权、违法,请联系admin@php.cn举报处理!
全部评论 文明上网理性发言,请遵守新闻评论服务协议
0条评论
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号

  • 登录PHP中文网,和优秀的人一起学习!
    全站2000+教程免费学