问题标签 [scoping]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
15 回答
43488 浏览

perl - Perl 中的 my 和 local 有什么区别?

我看到它们都用在我试图调试的这个脚本中,而文献只是不清楚。有人可以为我揭开这个神秘面纱吗?

0 投票
2 回答
1939 浏览

javascript - Javascript中的范围问题

我需要一些关于 Javascript 中的范围界定问题的信息。我知道它支持词法(静态)范围,但是,它不也支持动态范围吗?如果您对 Javascript 中的作用域有所了解,请与我分享?

谢谢

0 投票
4 回答
1004 浏览

c++ - 我可以使用块来管理 C++ 中的内存消耗吗?

我试图在 C++ 程序中节省一些内存,我想知道是否可以使用块作为变量的范围(如在 Perl 中)。假设我有一个巨大的对象,它执行一些计算并给出结果,这样做是否有意义:

我可以期望对象在退出块时被销毁吗?

0 投票
1 回答
1112 浏览

javascript - 对象原型方法中私有变量的作用域

这个问题是关于一个对象的行为,它的原型链中添加了方法和一些私有变量。只是出于好奇,想弄清楚这个谜语。

现在的问题是:为什么来自 ojbA 的原型方法 add2(因此:objA.add2())返回来自 objB 的私有变量的值?我会说这些私人不应该被 objA 访问。换句话说:这里发生了什么样的范围界定?还是陌生的。如果你这样做:

你得到 objA.add2():objA privatevalue: 5和 objB.add():objA privatevalue: 5

0 投票
2 回答
1036 浏览

python - 由外部模块分配的 Python 变量可用于打印,但不能用于在目标模块中分配

我有两个文件,一个在 webroot 中,另一个是位于 web root 上方一个文件夹的引导程序(顺便说一下,这是 CGI 编程)。

Web 根目录中的索引文件导入引导程序并为其分配一个变量,然后调用 aa 函数来初始化应用程序。到目前为止,一切都按预期工作。

现在,在引导文件中,我可以打印变量,但是当我尝试为变量赋值时,会引发错误。如果您拿走赋值语句,则不会引发错误。

我真的很好奇范围界定在这种情况下是如何工作的。我可以打印变量,但我不能分配给它。这是在 Python 3 上。

索引.py

引导程序.py

谢谢。

编辑:错误信息

0 投票
3 回答
726 浏览

ada - 为什么我在作业中弄错了这个项目?

我在作业中弄错了这个问题,我不知道为什么:

问题是:假设以下 Ada 程序是使用静态范围规则编译和执行的。在 Sub1 的程序中打印 X 的什么值?如果它在动态范围规则下怎么办?

我分别得到了 12 和 5,但这被标记为不正确。为什么?

0 投票
3 回答
15676 浏览

oracle - Oracle - 如何在存储过程中有一个 out ref 游标参数?

我们的应用程序将信息从 oracle 存储过程传递到 oracle .net 提供程序的标准方式是通过 out ref 游标参数。

过去我们所有的存储过程都在包中,并且有这样的东西:

现在我想将该 get_info 过程移出包并进入常规过程,但不知道如何获取 refcur 类型。如何在包范围之外创建它?

创建或替换类型 refcur 是 REF CURSOR;

不起作用。

0 投票
7 回答
13071 浏览

javascript - javascript中的变量是静态还是动态“作用域”?

或更具体到我需要什么:

如果我从另一个函数中调用一个函数,它是从调用函数中还是从上面的级别中提取变量?前任:

如果通过 runMe() 调用 callMe(),myVar 最终会是什么?

0 投票
1 回答
550 浏览

javascript - Javascript关闭范围问题

我正在尝试获取对单元格的引用,但它显示为空。如果我理解正确,我应该能够引用该变量。正确的?

或者

更新:这很明显,但我问这个的原因是因为如果你有 cell.pageX 将是未定义的:

但是,如果您有:

0 投票
20 回答
250578 浏览

javascript - 什么是词法作用域?

什么是词法作用域的简要介绍?