• JavaScript进阶-函数(参数,箭头函数)


    目录

    函数提升:

    参数:

            默认值:

    动态参数:

    剩余参数:

    箭头函数:


    函数提升:

            前面我们知道了变量有提升,函数也有提升,函数提升与变量提升比较类似,是指函数在声明之前即可被调用。 会把代码中具有名字的函数提前解析,解析到当前作用域最前面,但是,只定义,不调用。(函数表达式不存在提升的现象,函数提升出现在相同作用域当中

    参数:

            默认值:

            声明函数时为形参赋值即为参数的默认值,如果参数未自定义默认值时,参数的默认值为 undefined,调用函数时没有传入对应实参时,参数的默认值被当做实参传入

    动态参数:

            arguments 是函数内部内置的伪数组变量,它包含了调用函数时传入的所有实参。

    作用: 的作用是动态获取函数的实参 !(在参数不固定时候使用很好)

            我们直接看代码来理解,定义一个sum求和函数,来计算所有参数的和

    剩余参数:

        ... 是语法符号,置于最末函数形参之前,用于获取多余的实参,借助 ... 获取的剩余实参

     

     我们也可以用剩余参数像动态参数arguments那样来求参数和:

            

    箭头函数

            箭头函数是一种声明函数的简洁语法,它与普通函数并无本质的区别,差异性更多体现在语法格式上,能更好更快的帮助我们写函数。

    还有一种更简洁的写法,当参数只有一个,和代码一行时,甚至可以省去()和{}

    箭头函数总结:

    1. 箭头函数属于表达式函数,不存在函数提升

    2. 箭头函数只有一个参数时可以省略圆括号 ()

    3. 箭头函数函数体只有一行代码时可以省略花括号 {},并自动做为返回值被返回

    4. 箭头函数中没有 arguments,只能使用 ...(剩余参数)动态获取实参

    5. 涉及到this的使用,不建议用箭头函数(容易出错)

  • 相关阅读:
    Spring
    获取系统信息==Linux应用编程3
    有了“黑盒”测试为什么还要“白盒”测试? 由于单元测试要写测试驱动程序,非常麻烦,能否等到整个系统全部开发完后,再集中精力进行一次性地单元测试呢?等问题
    ES6解构赋值
    第一张是论文里面的运算过程,我的运算过程会出现里面的穿透外面那层,想要护腿进去的时候是能包裹住腿的
    家里Win7电脑如何连接公司Win10电脑?快解析+远程桌面
    Vue3 脚手架创建项目
    单链表经典例题
    如何通过C#/VB.NET从PowerPoint文档中提取图片
    SpringBoot+AOP+自定义注解,优雅实现日志记录
  • 原文地址:https://blog.csdn.net/qq_52031408/article/details/126788866