函数

函数的5种声明

第一种声明

1
  • function是关键字
  • console.log(x),x只能是字符串,如果不是字符串就调用x.toString()方法


    2

    函数与字符串区别有没有双引号

  • 下面图片有console.log()原型


    3

第二种声明

4

第三种声明

5

区别

6
  • 解释上图


    7
  • 绿色是y的作用区域

第4种声明

8
  • 答案是a n=1

第五种声明

9

用sum= (x,y)=>x+y不能有多句话和不能返回对象


10

总结

11

箭头函数没有名字

函数的属性name

12

13

如何调用函数

  • 调用call
  • 函数是一段可以反复调用的代码块


    函数内存图

    用纯对象构造函数

    1
  • 可以执行的代码的对象叫做函数

回顾

2

3
  • 右边是真正用法(硬核)

this和arguments

1

2

3
  • 普通模式下如果this是undefined,浏览器会把undefined改成window


    4

回顾

5

arguments

6
  • arguments是伪数组,proto没有指向Array.prototype

call stack 调用栈

7

8

总结过程

8

9

递归

9

stack overflow 还是一个解答网站哦

10

作用域

11

12
  • 只要有函数就有作用域 就近原则找
  • 变量提升 先找声明
  • 看到代码声明提升

闭包

  • 如果一个函数,使用了它范围外的变量,那么(这个函数+这个变量)就叫做闭包
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。