问题标签 [name-binding]

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 投票
1 回答
321 浏览

language-agnostic - 名称绑定和语言绑定

名称绑定语言绑定是不同的概念。但我想知道它们是否相关以及它们有何不同?对关系部分特别感兴趣。例如,如果语言绑定是按照名称绑定来实现的?

谢谢并恭祝安康!

0 投票
1 回答
149 浏览

r - 在 R 中,我可以找到与惰性参数相关的环境吗?

抱歉,这有点复杂。

我想捕获一个参数表达式,但也知道应该在哪个环境中对其进行评估。像这样:

问题是,如果没有为 提供参数x,它的环境将成为 的本地环境make.promise(),我不知道如何检测到。substitute除了我可以使用的功能之外,是否还有其他功能也可以捕获环境?

0 投票
3 回答
2402 浏览

python - 在 Python 列表中迭代 - 它是复制还是使用迭代器?

我有一个这样的清单

如果我写

第一个列表是从a复制到的x吗?或者 python 是否使用迭代器来执行此操作而无需进行任何额外的复制?

0 投票
2 回答
4174 浏览

python - 具有动态功能的 Python 嵌套范围

需要帮助理解PEP 227Python 语言参考中的以下句子

如果在封闭范围内引用了变量,则删除该名称是错误的。编译器将为“del name”引发 SyntaxError。

缺少示例导致我无法在编译时重现错误,因此非常需要使用示例进行解释。

0 投票
4 回答
1921 浏览

python - 如何在python中将名称与多个对象或值绑定

我在一本关于语言描述的书中看到说

我们如何将名称绑定到多个对象?例如,这不是我们所说的数组,其中所有元素都具有相同的名称但具有索引吗?对于像这里的例子这样的递归函数:

名称是否y与递归创建的多个值绑定,因为名称表已经将y名称绑定到递归复制的初始值?

已编辑只需按此处Visualizer并查看它生成的内容。:)

0 投票
2 回答
139 浏览

javascript - 在闭包中究竟是如何完成绑定的?

首先,您可以关闭s尚未定义的变量 ( )。如果使用词法(静态)作用域,这怎么可能?

第二,删除原来的sf()可以找到新的s。这是否意味着闭包绑定到变量名而不是引用或符号表索引或更机器级别的东西?我希望从 e 词法作用域闭包中抛出一个错误,因为原来s的被删除了。新的s只是重用了这个名字,和原来的没有任何关系s

第三,s匿名函数作用域内部不被 使用f(),这是否意味着词法作用域确实在起作用?

0 投票
2 回答
151 浏览

python - Why and how does the Python interpreter remember literal objects

I am surprised by the following result, using Python 2.7.4:

When the expression 5 is evaluated, a new object is created with the identity of 5068376. Now, I would expect that repeating the same statement would create another new object, whose identity would be unique, since simply evaluating an expression doesn't yield any references to the object and the object should be garbage collected.

It's not that the interpreter is reusing the same memory address either:

So what gives? Does the interpreter do behind-the-scenes binding of literals?

0 投票
2 回答
49 浏览

javascript - 为什么 JavaScript 中命名函数中的函数名不再指代函数本身?

考虑以下命名函数:

如果您正常调用此函数,则会按预期导致堆栈溢出。不是很有趣。所以让我们做一些魔术:

现在,如果您调用f它,它将只是alert第一个参数。但是,如果您调用g它,它仍然alert是第一个参数。发生了什么?调用不应该g导致堆栈溢出吗?

我的理解是,在函数内部f(现在g),变量f不再绑定到f. 它成为一个自由变量。因此f,变量内部f现在指向alert

为什么会这样?我希望命名函数中的函数名始终引用函数本身。我没有抱怨。它实际上很酷。我只是好奇。

0 投票
1 回答
1270 浏览

java - Jersey @PreMatching 和 1 个提供者中的名称绑定

我需要实现一个(ContainerRequestFilter)需要在pre-matching阶段调用但仅适用于某些资源的 Jersey 过滤器。

pre-matching部分可以通过使用 Jersey机制的@PreMatching注解和功能来注解类来完成。"apply to some"NameBinding

我需要它来将 2 个功能结合到 1 个提供商中;现在我很确定这不能完成,因为对我来说这似乎是矛盾的(过滤器将在我们检查给定的类是否被注释之前被调用)但我仍然想 100% 确定这一点,因为我会跳过 1进入 Jersey 生命周期,从而减少响应时间。

我正在使用泽西岛 2.6

谢谢

0 投票
1 回答
245 浏览

haskell - Let 表达式如何在 AST 中工作?

考虑:

构造Let函数使我能够绑定一个表达式(第一个 arg),以便在第二个(V Nothing引用它)中引用它。

如果我做类似的事情

指的是哪个LitVar Nothing此外,我想一次将其推广到多个绑定,但我不知道该怎么做。我遵循了优秀的 Edward Kmett绑定包中的一些示例,但现在我既困惑又迷茫。