博客列表 >对象与数组的解构赋值,访问器属性

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

手机用户311660634
手机用户311660634原创
2022年11月05日 07:00:06267浏览
  1. // 解构赋值
  2. // 1.数组
  3. let [uname, uage, usex] = ['刘备', 50, '男']
  4. // 更新,在{}[]()这些括号前不能省略分号;
  5. ;[uname, uage, usex] = ['关羽', 45, '男']
  6. // 2.值数量<变量数量,使用默认值
  7. ;[uname, uage, usex='男'] = ['关羽', 45]
  8. // 值数量>变量数量,使用...
  9. // 更新,在{}[]()这些括号前不能省略分号;
  10. ;[uname, ...ziliao] = ['关羽', 45, '男']
  11. // 2对象
  12. // 1.变量名 === 属性,绝对等于
  13. let {name, sex} = {name:'孙悟空', sex:'男'}
  14. // 更新,大括号不能出现在等号左边,得加上括号()
  15. ;({name, sex} = {name:'白骨精', sex:'女'})
  16. // 命名冲突:使用别名
  17. let {mname, sex:man} = {mname:'lin', sex:'man'}
  18. // 访问器属性
  19. let sjk = {
  20. sj:{
  21. name:'柯南',
  22. age:5,
  23. },
  24. // 读取接口
  25. getage(){
  26. return{
  27. name:this.sj.name,
  28. age:this.sj.age
  29. }
  30. },
  31. // 设置接口
  32. setage(age){
  33. if( age >= 0 && age<=130 ){
  34. this.sj.age = age
  35. } else{
  36. console.log('年龄必须是1到130之间')
  37. }
  38. }
  39. }
  40. // 访问器属性,普通方法===>访问器属性
  41. sjk = {
  42. sj:{
  43. name:'柯南',
  44. age:5,
  45. },
  46. // 使用访问器属性,get必须有,set可选
  47. get age(){
  48. return{
  49. name:this.sj.name,
  50. age:this.sj.age
  51. }
  52. },
  53. // 将一个方法伪装成属性
  54. set age(age){
  55. if( age >= 0 && age<=130 ){
  56. this.sj.age = age
  57. } else{
  58. console.log('年龄必须是1到130之间')
  59. }
  60. }
  61. }
声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议