JS函数作用域实例如何进行深入分析?

更新于
2026-09-26 18:19:04
1阅读来源:SEO基础
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计573个文字,预计阅读时间需要3分钟。

JS函数作用域实例如何进行深入分析?

原文示例讲述了JS函数本身的用途域。分享给家人参考,内容如下:

函数本身也是一个值,有自身的用途域。它的用途域与变量一样,就是其声明时所在的作用域,也就是其声明时所处的环境。

本文实例讲述了JS函数本身的作用域。分享给大家供大家参考,具体如下:

函数本身也是一个值,也有自己的作用域。它的作用域与变量一样,就是其声明时所在的作用域,与其运行时所在作用域无关。

var a = 1 var x = function() { console.log(a) } function f() { var a = 2 x() } f()

上面代码中,函数x是在函数f的外部声明的,所以它的作用域绑定外层,内部变量a不会到函数f体内取值,所以输出1,而不是2。

总之,函数执行时所在的作用域,是定义时的作用域,而不是调用时所在的作用域

var x = function () { console.log(a); }; function y(f) { var a = 2; f(); } y(x) // ReferenceError: a is not defined

上面代码将函数x作为参数,传入函数y。但是x是在函数y体外声明的,作用域绑定外层,因此找不到函数y的内部变量a,导致报错。

阅读全文

本文共计573个文字,预计阅读时间需要3分钟。

JS函数作用域实例如何进行深入分析?

原文示例讲述了JS函数本身的用途域。分享给家人参考,内容如下:

函数本身也是一个值,有自身的用途域。它的用途域与变量一样,就是其声明时所在的作用域,也就是其声明时所处的环境。

本文实例讲述了JS函数本身的作用域。分享给大家供大家参考,具体如下:

函数本身也是一个值,也有自己的作用域。它的作用域与变量一样,就是其声明时所在的作用域,与其运行时所在作用域无关。

var a = 1 var x = function() { console.log(a) } function f() { var a = 2 x() } f()

上面代码中,函数x是在函数f的外部声明的,所以它的作用域绑定外层,内部变量a不会到函数f体内取值,所以输出1,而不是2。

总之,函数执行时所在的作用域,是定义时的作用域,而不是调用时所在的作用域

var x = function () { console.log(a); }; function y(f) { var a = 2; f(); } y(x) // ReferenceError: a is not defined

上面代码将函数x作为参数,传入函数y。但是x是在函数y体外声明的,作用域绑定外层,因此找不到函数y的内部变量a,导致报错。

阅读全文