博主信息
博文 20
粉丝 0
评论 1
访问量 17432
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
解构赋值及其在函数传参中的应用
zg的php学习
原创
1095人浏览过

解构赋值

将一个多值变量(数组、对象)的值分解赋值给各个单值变量
常规用法:

  1. let name, sex, age;
  2. //数组
  3. let arr = ["张三", "male", 32];
  4. name = arr[0];
  5. sex = arr[1];
  6. age = arr[2];
  7. //对象
  8. let user = { name: "张三", sex: "male", age: 32 };
  9. name = user.name;
  10. sex = user.sex;
  11. age = user.age;

解构用法:

  1. //数组解构
  2. [name, sex, age] = ["张三", "male", 32];
  3. //对象解构
  4. ({ name, sex, age } = { name: "张三", sex: "male", age: 32 });

解构出现参数不足或过多时的解决方法,以数组为例(对象同样)

  1. //参数不足时,可以添加默认值
  2. [name, sex, age = 18] = ["张三", "male"];
  3. //参数过多时,可以使用 “...” 合并参数
  4. [name, sex, age, ...args] = ["张三", "male", 32, "admin@php.cn",32]

注意点:

  • 解构时左右两边的类型必须一致。
  • 对象解构时,因为左边不能直接使用{…},所以当没有 let 关键字时,可以用小括号将整条语句包住,让它成为一个表达式即可。

解构赋值在做为函数参数时的应用

数组或对象做为函数参数传递时的常规用法,以对象为例:

  1. //常规用法
  2. let obj = { name: "张三", sex: "male", age: 32 };
  3. let f = (o) => console.log(o.name, o.sex, o.age);
  4. f(obj);
  1. //解构赋值法
  2. let obj = { name: "张三", sex: "male", age: 32 };
  3. let f = ({ name, sex, age }) => console.log(name, sex, age);
  4. f(obj);

当参数不足或过多时,同样可以使用添加默认值和”…”合并参数来解决。

批改老师:PHPzPHPz

批改状态:合格

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

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

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