ThinkChat2.0新版上线,更智能更精彩,支持会话、画图、阅读、搜索等,送10W Token,即刻开启你的AI之旅 广告
~~~ /* * 当前函数执行,形成一个私有作用域A,A的上级作用域是谁, * 和他在哪执行的没有关系,和他在哪创建(定义)的有关系, * 在哪创建的,它的上级作用域就是谁 */ /* var a = 12; function fn() { //=>arguments:实参集合 //=>arguments.callee:函数本身FN //=>arguments.callee.caller:当前函数在哪执行的, CALLER就是谁(记录的是它执行的宿主环境), 在全局下执行CALLER的结果是NULL console.log(arguments.callee.caller); } function sum() { var a = 120; fn(); } function aa() { fn(); } aa(); */ ~~~ ~~~ var a = 12; function fn() { console.log(a); //12 } fn(); ~~~ ![](https://img.kancloud.cn/cb/5a/cb5adea4f007842f777e5ed2b9d8322f_296x108.png) ~~~ var a = 12; function fn() { console.log(a); //12 } function sum() { var a = 120; fn() } sum(); ~~~ ![](https://img.kancloud.cn/35/d8/35d8093882abe4f1945549c63d256c08_515x162.png) ~~~ var n = 10; function fn() { var n = 20; function f() { n++; console.log(n); } f(); return f; } var x = fn(); x(); x(); console.log(n); ~~~ ![](https://img.kancloud.cn/50/b4/50b4577530eaf5c9128c30c20fd9b45b_402x218.png) ![](https://img.kancloud.cn/88/d8/88d8036a42f3656aa36657bf7c999d43_453x284.png) ![](https://img.kancloud.cn/cb/5e/cb5eeb7de61c5feee4ad6f460a6ac083_2558x900.png) 全局的n和私有的n没有关系