博客列表 >函数的要素

函数的要素

南瓜又个梦
南瓜又个梦原创
2021年06月13日 10:19:00778浏览
  1. 调用时机
    时机不同调用结果不同
  2. 作用域
  • 每个函数都会默认创建一个作用域
  • 全局变量和局部变量
    在顶级作用域声明的变量是全局变量,window的属性是全局变量,其他都是局部变量
  • 函数可以嵌套,作用域也可以嵌套
  • 作用域规则
    如果多个作用域有同名作用域a
    那么查找a 的声明时,就向上找最近的a
    简称就近原则
    查找a的过程和函数执行无关
    但是a的值和函数执行有关
  1. 闭包
    如果函数用到了外部的变量,那么这个变量加上这个函数就叫做闭包
  2. 形式参数
    1. function add(x, y){
    2. return x+y
    3. }
    4. // x y
    5. add(1,2)
    6. // add 1 2 x y
    非实际的参数
    变量的申明
    形参可多可少
  3. 返回值
    每个函数都有返回值,需要函数执行了才会返回,有的返回值有的返回undefined,只有函数有返回值。
  4. 调用栈
  • JS引擎在调用一个函数前,需要吧函数所在环境push到一个数组里,这个 数组叫做调用栈,当执行完了以后会将环境弹出来(pop),return到之前的环境,在执行下一步的代码
  • 每个浏览器的栈不同但是大概范围是在10000-12000之间。
  1. 函数提升
    不管函数放在哪里,它总是会在第一行,但是匿名函数除外
  2. arguments(除了箭头函数)
    保存了所有变量数据,是一个伪数组
  3. this(除了箭头函数)
    一个管道,一个空对象
声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议