问题标签 [let]

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 回答
255 浏览

scheme - Scheme let* 作为嵌套的一元让

作为一个练习,我正在尝试重写表示源代码的字符串let*作为嵌套的一元让。这是我的最大努力:

我目前遇到的问题是模式:

与以下字符串不匹配:

term子句只匹配第二个子句(c d)。在我看来,它应该将所有剩余的(var val)子句作为一个列表((c d) (e f))。无论如何,我需要它这样做。

任何建议表示赞赏。

令我困惑的是,expr将匹配表达式列表,所以我想不出任何原因子句也不会这样做。

0 投票
5 回答
556 浏览

javascript - let 关键字的解决方法?

我怎样才能得到这个

alert 12并且3不使用let关键字?

或在元素上绑定事件(示例):

0 投票
1 回答
5751 浏览

vim - 使用变量设置 Vim 选项

我有一个应该相当简单的问题,但我还没有找到解决方案。我正在编辑我的 .vimrc 并想使用保存在变量中的结果设置一个选项。例如,我想将我所有的临时文件聚合在 ~/.vimetc 中。这就是我想做的,

当然,set 不能解析变量,所以我只是以文字 |s:vimetc.'backups/'| 结尾,这完全不是我想要的。我尝试使用 &s:vimetc 得到类似的结果。有谁知道如何做到这一点?

0 投票
2 回答
426 浏览

linq - Linq-to-Objects 和 Linq-to-XML 中的 Let 语义问题

请考虑以下示例,其中包含嵌套 XElement 的定义和一对 Linq 表达式。第一个表达式按预期工作,迭代地获取底层的第一个和最后一个 XElement,方法是选择通过获取机器人(用于底部)生成的 tmp,存储在匿名类型的新实例中以重用名称“bots 。” 第二个表达式尝试做同样的事情,只是使用“Let”,但它根本不起作用。首先,编译器抱怨类型推断不起作用,然后,当我输入显式类型时,它会进入 IObservable 并变得更加丢失。我原以为这会非常简单,并且对失败感到非常惊讶和困惑。如果有人有时间查看和建议,我将不胜感激。您可以将以下内容粘贴到 LinqPad 中,

0 投票
1 回答
3294 浏览

binding - Clojure 中的变量作用域 + eval

在 Clojure 中,

打印 3,而

生成“无法解析 var”异常。

根据http://clojure.org/evaluationevalload-string等生成临时命名空间来评估其内容。因此,我希望上述代码示例都不起作用,因为(def x 3)是在我当前的命名空间中完成的,而不是由eval.

  1. 为什么第一个代码示例有效,而后两个无效?
  2. 如何eval不使用绑定变量的表单def

谢谢!

0 投票
4 回答
1886 浏览

coding-style - 链接“let”语句时最好使用“and”或“in”?

我意识到这可能是一个愚蠢的问题,但是......

如果我要链接一堆不需要知道彼此值的语句,使用letor更好吗?andin

例如,如果有的话,哪些是更可取的:

或者

我的直觉告诉我,前者应该是“更好”(通过对“更好”的一个非常狭隘的定义),因为它创建了必要的最小范围,而后者是一个范围内的范围内 -编译器/解释器注意但最终不重要且不必要的深度的范围。

0 投票
4 回答
703 浏览

recursion - 试图理解方案中的“让”

我正在尝试扩展一个简单的斐波那契函数,并且我需要多次使用每个术语的值。所以,我想我会let用来坚持价值观。但是,我没有得到我认为应该从函数中得到的东西。

这是原始fib功能:

这是我做同样事情的尝试,但是let

结果:

谢谢!

0 投票
3 回答
1559 浏览

javascript - let 块语句和等价的 with 语句有什么区别?

过时的

let 语句的块版本在最终确定之前从 ES6 中删除,并且已从支持它的浏览器中删除。这个问题现在只具有历史意义。

使用ECMAScript 6let块语句和使用with具有等效对象文字的语句之间有什么区别吗?

使用let语句

使用with语句

0 投票
2 回答
2082 浏览

haskell - Haskell 让 in/where 和 if 缩进

我有一个功能:

在 filterLength 我想检查多少 filterLength 之后,我尝试:

我得到错误:

如何使用 if 和 in 正确放置缩进?

谢谢你。

0 投票
1 回答
473 浏览

common-lisp - 语句没有按顺序执行?(在 let 语句中的 defvar)

我试图将其简化为最小的示例。代码运行没有错误,产生预期的输出。但它给了我一个警告,我的第一个变量是未定义的。似乎 progn 的第二个语句没有“看到”第一个语句的结果。谢谢您的帮助!

(我最初在代码中根本没有 progn 构造,但是在收到此错误后,我添加了它以查看是否会强制按顺序执行 - 但错误是相同的。)

这是代码:

这些是文件“input.lisp”的内容:

这是我在执行后从 sbcl 得到的输出(加载“test.lisp”):

所以,在我看来,两个定义语句都在执行,但第二个没有“看到”第一个的结果。它仍然正确构造数组,因为它填充了给定的初始内容。但是为什么 var1 还没有定义呢?