博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
ES6 - 函数与剩余运算符
阅读量:6342 次
发布时间:2019-06-22

本文共 884 字,大约阅读时间需要 2 分钟。

ES6 支持参数默认值

  • 之前通常用||运算符设置默认参数:b = b || 默认值;
  • ES6 可以直接设定函数参数默认值:
    function show(a=2,b=3){    //TODO}复制代码
    function show({a=2,b=3}={}){    //TODO}复制代码
  • 函数的参数在函数体内重新定义会报错;因为参数已经被定义了
    function (a = 12) {    let a = 8; //报错,重复定义}复制代码

扩展运算符/rest运算符/三个点

  1. 展开数组:
    let a = ['apple','banana','orange'];console.log(...a); //apple, banana, orange复制代码
  2. 数组参数展开:
    function show(a,b,c){    //TODO}show(...[1,2,3]);复制代码
  3. 参数组成数组:(ES6之前常用Array.prototype.slice.call(arguments)
    function show(...args){    //TODO}show(1,2,3);复制代码
  4. 剩余参数运算符:
    function show(a,b,...c){    //TODO}show(1,2,3,4,5); //3,4,5会以数组的形式传入c中复制代码
  5. 数组复制:
    let arr = [1,2,3];let arr2 = [...arr];let arr3 = Array.from(arr);复制代码

箭头函数 =>

  • 左边参数,右边语句和返回值
    1. 最简单的形式:let show = ()=>1; //返回1
    2. 带参数的形式:let show = (a,b)=>a+b; //返回a+b的值
    3. 带语句的形式:let show = (a,b)=>{//TODO};
  • 需要注意的问题:
    1. 解决了this指向的问题:箭头函数中this指向定义时所在的对象,而不是执行时所在的对象;
    2. 箭头函数中没有arguments;可以用...args来解决;
    3. 箭头函数不能用于构造函数;

转载地址:http://mcyla.baihongyu.com/

你可能感兴趣的文章
定制仿Windows的linux桌面(CentOS6环境)
查看>>
特征点检测学习_1(sift算法)
查看>>
项目经理的九大修炼
查看>>
phpwind 统计代码位置
查看>>
关键代码段实现线程同步
查看>>
json工具性能比较:json-lib和jackson进行Java对象到json字符串序列化[转]
查看>>
404错误页面的一些具体操作设置
查看>>
[置顶] ffmpg简介以及用它实现音频视频合并(java)
查看>>
A10 平板开发二搭建Android开发环境
查看>>
HDU4712-----Hamming Distance------超级大水题
查看>>
sscanf用法
查看>>
统计中的t检验
查看>>
python 自动生成C++代码 (代码生成器)
查看>>
svn经常使用命令具体解释(非常全,非常有用)
查看>>
DevExpress licenses.licx 的解决方法 z
查看>>
NOI第一天感想&小结
查看>>
<聪明的投资者(第四版点评)>读书笔记
查看>>
[ES6] 20. Polyfills
查看>>
第15章 I/O(输入/输出)
查看>>
软件介绍(apache lighttpd nginx)
查看>>