摘要: 闭包的定义: 当函数可以记住并访问所在的词法作用域时,就产生了闭包,即使函数是在当前词法作用域之外执行。 我们来看以下代码, function foo() { var a = 2; function bar() { console.log(a); } return bar; } var baz = 阅读全文
posted @ 2023-04-01 22:39 heyujun- 阅读(16) 评论(0) 推荐(0) 编辑
摘要: 每个函数的this是在调用时被绑定的,完全取决于函数的调用位置; 什么是调用位置呢? 顾名思义就是“函数被调用的位置”;要去寻找被调用的位置,那么就要分析调用栈,this的调用位置就在当前正在执行的函数的前一个调用中; 举个例子 function baz() { // 当前调用栈是全局 -> baz 阅读全文
posted @ 2023-04-01 21:48 heyujun- 阅读(14) 评论(0) 推荐(0) 编辑
摘要: 要知道打印什么需要具备2个知识点 一、函数声明和函数表达式的区别 二、匿名函数与具名函数的区别 首先来说说第一点: 要区分函数声明和函数表达式,只需要知道function是不是声明中的第一个词,如果是,那就是函数声明,否则就是函数表达式; 函数声明和函数表达式之间最重要的区别是他们的名称标识符将会绑 阅读全文
posted @ 2023-04-01 14:10 heyujun- 阅读(201) 评论(0) 推荐(0) 编辑