scope 相关问题

范围是一个封闭的上下文,其中值和表达式相关联。使用此标记可以了解不同类型范围的问题以及范围可能不清楚的问题。

“return func”和“return func()”之间的区别

首先,如果这是一个重复的问题,我很抱歉。 假设我有一个简单的 python 代码,名为decorator.py,其中带有装饰器: `def 装饰器(函数): def 包装器(): 打印(“B...

回答 1 投票 0

隐藏包级函数的递归函数

以下输出“2”。这是为什么?它不应该递归并打印“210”吗? 包主 var f = func(x int) {} 函数酒吧(){ f := func(x int) { ...

回答 2 投票 0

使用箭头函数语法时,无法在回调作用域内访问变量(警告:未定义的变量)

我需要使用可变变量在 array_map() 的回调内部定义 lambda 函数。对于我引用的变量,我收到“未定义的变量”警告。

回答 2 投票 0

C 中全局变量的重新分配

据我了解,当从翻译单元调用函数并且该函数使用该翻译单元的全局变量时,变量地址是不可更改的。如果从 t 调用功能...

回答 1 投票 0

在 JavaScript 中从一个文件调用另一个文件

我知道这个问题已经被普遍讨论过,但我的具体情况有所不同。我需要从一个文件中调用另一个文件中的函数,但我无法更改另一个文件中的代码....

回答 1 投票 0

为什么我在第二个错误中遇到错误,但在第一个错误中却没有?

函数求和(a,b){ c=a+b; } 总和(10,20) 文档.write(c); 函数求和(a,b){ var c=a+b; } 总和(10,20) 文档.write(c) </scr...</desc> <question vote="1"> <pre><code>&lt;script&gt; function sum(a,b){ c=a+b; } sum(10,20) document.write(c); &lt;/script&gt; &lt;script&gt; function sum(a,b){ var c=a+b; } sum(10,20) document.write(c) &lt;/script&gt; </code></pre> <p>在后者中,为什么会出现错误,显示'c'未定义。难道只是因为我在变量 c 之前写了 'var' 关键字吗?</p> </question> <answer tick="false" vote="0"> <p>这里发生了一些事情。</p> <p>在 JavaScript 中,如果有多个同名函数,则仅使用最后一个函数。在您的示例中,使用带有 <pre><code>var</code></pre> 的那个,而忽略第一个。这是因为 JavaScript 将变量和函数声明“提升”到每个作用域的开头。尽管是一种解释性语言,但首先要分析代码,而这种“提升”是该过程的一部分。</p> <p>使用 <pre><code>var</code></pre> 声明变量将其限制在局部范围内。在第二个函数中,您将 <pre><code>c</code></pre> 限制为仅在该函数中可用。如果删除 <pre><code>var</code></pre>,c 将是一个全局变量,因此可以从函数外部访问。 (我建议始终使用 <pre><code>var</code></pre> 和 <pre><code>let</code></pre> 以避免与全局变量混淆。此外,在示例函数中,理想情况下它们应该返回值而不是设置全局变量。)</p> <p>错误发生在第 6 行:第一个 <pre><code>document.write(c);</code></pre> 因为您在第二个函数中使用了 <pre><code>var</code></pre>,所以 <pre><code>c</code></pre> 不能用作全局变量,因此代码失败并显示 <pre><code>ReferenceError: c is not defined</code></pre>。</p> </answer> </body></html>

回答 0 投票 0

未捕获的 TypeError TypeError:this.somePropFun 不是对象中的函数

我无法访问作为对象属性值的函数。仅当从另一个属性调用函数时才会发生这种情况。调用带有函数direct的属性...

回答 2 投票 0

C++ 引用和 STL 容器的范围[重复]

我有以下代码片段(为了简单起见,这是一个简单的代码示例): #包括 #包括 #包括 类样本类 { 民众:

回答 1 投票 0

奇怪的结构初始化范围问题?

我编写的用于初始化结构成员的函数存在问题。 #包括 #包括 #包括 #包括 #定义 START_COL 2 #

回答 1 投票 0

“with”语句中变量的范围?

我只使用Python读取第一行: 将 open(file_path, 'r') 作为 f: my_count = f.readline() 打印(我的计数) 我对 my_count 变量的范围有点困惑。虽然...

回答 2 投票 0

如何将A fun的变量重用到B类的变量中?

课堂乐趣: def __init__(自身): self.converted_list = self.convert_list() self.map_result = self.map_list() #可用于其他乐趣 def 转换列表(自身): ...

回答 1 投票 0

是否可以在使用函数时调用程序中指定的值,而不将其写入函数本身?

我是 C 编程新手并开始学习,我想知道是否可以在多个函数中使用某种整数,这样通过在一个地方更改它,它就会

回答 1 投票 0

pickle加载时如何查找属性?

我不明白pickle在加载文件时如何找到它的属性。我想在不同的模块中为 pickle 提供不同的类定义,但它对我不起作用。 这是一个

回答 1 投票 0

Rust 生命周期如何与 &str 交互? [重复]

我刚刚开始学习 Rust,我尝试输入以下函数。 fn 最长<'a>(a: &'a str, b: &'a str) -> &'a str{ 如果 a.len() > b.len() { A }

回答 1 投票 0

几乎嵌套项目中的名称错误

我在解决项目中的范围界定错误时遇到了严重的困难。 我的项目看起来像这样: 这个主文件包含进程并使用 tkinter 创建 GUI

回答 1 投票 0

理解 JavaScript 中的函数作用域和闭包

我对 JavaScript 比较陌生,并且很难掌握函数作用域和闭包的概念。我一直在尝试函数并遇到一些意外的行为。这是一个简单的...

回答 1 投票 0

spring web flow启用范围

Spring Web Flow 提供了额外的 bean 作用域,如 flow、conversation、flash 等。我可以使用 var 在 flow.xml 中定义流作用域 beans,或者我可以将值设置为新的作用域变量。我如何定义...

回答 2 投票 0

Python:如何从模块中的函数内修改外部变量?

如何在函数内更新player_points的值? 我有一个具有此功能的模块。我想更改函数外部的变量player_points。我该怎么做呢? 另外,

回答 1 投票 0

Kotlin:在自定义构建器函数中初始化 vals

我创建了一些自定义数据类型和相应的构建器,它们在单元测试中大量使用。一般模式看起来有点像这样: @测试 有趣的测试(){ 目的 { 瓦尔索姆...

回答 1 投票 0

为什么在 <IMG> 事件处理程序中运行的 JavaScript 中 x 和 y 是不可变的?

我正在使用 Chrome,以防这是浏览器特定的行为 当我尝试在图像的 onLoad 或 onError 事件处理程序中使用 JavaScript 设置 x 变量的值时,我无法做到。 x 和 y s...

回答 1 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.