问题标签 [proc-object]
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.
ruby - 另一个 proc 与 lambda 的讨论
我认为当您在方法中调用 proc 时,proc 的返回值会触发从调用 proc 的 out 块上下文返回。当我打电话时,test(a_block)
我觉得puts "after the block"
不应该执行,因为 proc 有一个返回值。进一步......test(a_block)
并且test(b_block)
行为完全相同。我以为这里应该有区别?
ruby - 这个 lambda 发生了什么?有人能解释一下吗
请让我参考一些链接来揭开这个神秘面纱......
ruby - 如何在类变量中定义的 lambda/Proc 中使用实例变量?
我写了以下代码:
但是,当@commands
散列是类变量时,这可行,散列中的代码不知道@people
数组。
如何使@commands
哈希成为类变量并且仍然能够访问特定的对象实例变量?
ruby-on-rails - 为什么在使用 Proc.new v. & 符号时,ruby 中的 break 语句表现不同?
块的 break 语句(根据 Ruby 编程语言)定义如下:
它使块返回到它的迭代器,而迭代器返回到调用它的方法。
因此,当运行以下代码时,会导致 LocalJumpError。
虽然以下代码不会引发 LocalJumpError。& 符号有什么特别之处?& 符号不是隐式使用 Proc.new 吗?
换句话说,我将 & 符号作为内联 Proc.new 调用的一种方式。此时行为应该与第一个代码片段相同。
免责声明:我是学习语言的新手(ruby 1.9.2),因此会欣赏参考资料和详细的概要。
ruby - 将 self 应用于 proc 的方法
我想定义一个方法,Object
该方法需要一个块并将接收器应用于该块。实现将如下所示:
是否已经有一种标准方法可以做到这一点,或者有一个众所周知的库有类似用途的方法?如果是这样,我不想重新发明轮子。
我经常遇到这样的情况,我有一个方法,它接受一个可选块,当没有块时,我想返回return_value
方法内计算的一些,但是当有块时,我想返回返回值return_value
应用于块。现在,我有很多行,例如:
但我想始终如一地写
甚至更好,对 的定义稍作修改apply
,
ruby - 为什么可以在 ruby 1.9 中使用 === 调用 procs?
本文提到了 ruby 1.9 中调用 procs 的 4 种方法,=== 就是其中之一。我完全不明白为什么会这样。和 === 的正常含义有什么关系(询问两个对象是不是同一个对象)?
ruby - 为什么使用过程而不是方法?
我是编程新手,而 ruby 是我第一次真正接触它。我得到了块,但 procs 似乎是一个轻量级的方法/函数概念——为什么要使用它们?为什么不只使用一种方法?
谢谢你的帮助。