问题标签 [local-variables]
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.
java - 为什么会出现“重复的局部变量”错误?
我有一个循环,我在其中计算一个值并将其添加到一个列表中。所以,我做这样的事情:
我发现这种方法不起作用,因为我将相同的实例添加到列表中。更详细地说,在循环的每个循环中,我都会为 重新分配一个新值,x
这样做我会更改已添加到列表中的所有元素的值(所以最后我会得到一个相同元素的列表)。
为了解决这个问题,我做了以下事情:
通过这种方式,我想在每次想向列表中添加一个值时创建一个新实例。但它不起作用,因为我得到一个重复的局部变量错误。
我也很奇怪,如果我在循环中多次声明同一个变量,我没有这个错误。仅当我首先在循环外声明一个新变量然后在循环中声明时才会出现问题。
Java中有没有办法为不同的实例重用相同的名称?
添加
我需要澄清一些问题。我没有显示所有代码。我break
在循环中有命令(当无法生成新值时,我退出循环)。x
并value
有Integer[]
类型。
ADDED 2
既然有人提到问题可能出在getValue()
我需要在这里更详细的说明。实际上我getValue()
的代码中没有(我getValue()
在这里用来使我的示例更短)。在我的代码中,我有:
而且它不起作用,因为在我的values
列表中我有相同的元素(而且我知道在每个循环的循环中x
都有一个新值)。
添加 3
java - 它是重复局部变量问题的优雅解决方案吗?
添加
我想用这段代码做什么?我需要填充(填写)名为exchanges
. 列表的第一个元素是lastExchange
。我的代码问题是我总是需要创建一个变量的两个副本(这就是为什么我认为代码并不优雅但我找不到更好的解决方案)。例如,一开始我创建lastExchange
,然后我创建exchangeToAdd
(与 具有相同的值lastExchange
)。同样的情况也发生在循环中。我创建lastExchange
,然后我创建exchangeToAddForLoop
. 我这样做是因为我无法添加lastExchange
到列表中,因为稍后会对其进行修改。
添加 2
这是我的问题。我有这样的代码:
我需要计算e1
,e2
另外还要计算e
.
javascript - 用 Javascript 中的参数替换局部变量是否会影响性能?
编写一个将本地var
语句替换为参数的函数是否会影响性能?例子:
一些优点:
- 较小的缩小尺寸:没有
var
声明; - 减少程序员花费在尝试使用尽可能少
var
的 s 上的时间 - 在一个地方定义的所有本地变量
...和缺点:
arguments
可以以意想不到的方式改变。见下文- 在正文中不太清楚 vars 是本地的
- 困惑地看到无用的论点
- 如果有人在不知不觉中删除了它们,您的代码将写入全局变量
仍然可能是缩小器自动挤出更多位的简单方法。
更新:到目前为止没有提到的一个很大的缺点:如果使用 N 个参数调用函数,则其中的前 N 个项目arguments
将绑定到参数列表中的前 N 个标识符(参见10.1.8 中的最后一个项目符号)。考虑一下:
在上面的例子中,如果你调用processStuff(stuff1, stuff2)
,设置i
和j
将分别覆盖arguments[0]
和arguments[1]
。
java - 在 Eclipse JDT 中,如何知道变量绑定是否代表局部变量?
我注意到eclipse.jdt.core.dom
变量绑定 ( ) 提供布尔方法来IVariableBinding
检查它们是否表示字段、枚举常量或参数(isEnumConstant()
和)。isField()
isParameter()
我怎么知道它是否代表局部变量?是否可以安全地假设如果 aIVariableBinding
不是前三个之一,它将始终是局部变量?
c# - c#:静态方法中的静态变量
你可以在静态方法中有一个静态变量吗?该变量的值是否会在对该方法的所有调用中保留?
例如。
c++ - 如何使用指针从不同的函数访问局部变量?
我可以访问不同函数中的局部变量吗?如果是这样,怎么做?
上面这段代码的输出:
我究竟做错了什么?“4202656”是什么意思?
我是否必须在replaceNumberAndPrint()
函数中复制整个数组才能比第一次更多地访问它?
java - 获取局部变量
当从已部署的应用程序获取堆栈跟踪作为错误报告时,获取实际变量值以在引发异常之前重建系统状态将很有帮助。
在 Java 中这样的事情是可行的吗?怎么能做到呢?
干杯,马克斯
ruby-on-rails - 是否可以使用 RJS 传递局部变量,例如 ':locals => { :f => f }'?
在我的 'ROOT_RAILS/views/accounts/new.html.erb' 我有
我正在尝试在“ROOT_RAILS/views/accounts/create.js.rjs”中使用 RJS 来替换这样的 html
但我收到一个错误:
当然在 'ROOT_RAILS/views/accounts/_ew_account_partial.html.erb' 我有这样的东西:
是否可以使用 RJS 传递局部变量,例如 ':locals => { :f => f }'?如果是这样,怎么做?