知食记
搜索文档…
知食记
思维导图
归档
博客
🎃CSS
CSS基础
CSS3
SCSS
🎉JavaScript
JS 概念
类型
类型转换
内存
原型链
继承
词法作用域
事件委托
Falsy
This
闭包
Event-loop
跨域
function.length
arguments
!!
void 0
柯里化1
柯里化2
异常
协程
JS陷阱
JS开发知识点
实现JS常见函数
实现JS 常见操作函数
JS Worker
ES6
ES6 函数
Typescript
V8
🕹️框架
Vue
Vue3
React
React-Redux
React Hooks
Nuxt
Koa2
🎯算法
算法与数据结构
🎁HTML
DOM
SVG
🏈计算机网络
浏览器
计算机网络
🥊前端生态
Webpack
Babel
Fetch
Axios
Npm
Yarn
业务开发
微前端
Hexo
🏀后端
Node
Java
Python
🕹️面试
面试真经
To-do
🤖开源
开源项目
🧸其他
Linux
Git
正则
设计模式
计算机理论
Group 1
由
GitBook
提供支持
词法作用域
JavaScript 采用的是词法作用域,函数的作用域在函数定义的时候就决定了。
1
var
value
=
1
;
2
3
function
foo
()
{
4
console
.
log
(
value
);
5
}
6
7
function
bar
()
{
8
var
value
=
2
;
9
foo
();
10
}
11
12
bar
();
// 输出 1
Copied!
分析:
执行 foo 函数,先从 foo 函数内部查找是否有局部变量 value,如果没有,就根据书写的位置,查找上面一层的代码,也就是 value 等于 1,所以结果会打印 1。
如果是动态作用域,才会输出2
以前
寄生组合
下一个
事件委托
最近更新
2yr ago
复制链接