问题标签 [splat]

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 投票
3 回答
1225 浏览

ruby - 将 splat 参数从一种方法传递到另一种方法

我想使用 splat 参数创建名为“add”和“subtract”的方法,如下所示:

但它没有用。我应该怎么做才能将 splat 参数从一个传递到另一个?(特别是对于某些特定范围...)

谢谢!

0 投票
1 回答
162 浏览

ruby - 为什么仅当我从参数中删除 splat 运算符时才使用 Hash#each 方法?

我在 Ruby Monk 上遇到了一个问题,https://rubymonk.com/learning/books/1-ruby-primer/problems/155-restaurant#solution4804

他们的解决方案很棒;我喜欢它,它比我的更紧凑。问题是我的,我只是不明白为什么它只有在我从 cost 参数中删除 splat 运算符时才有效orders。即使我不应该这样做,我也在努力弄清楚发生了什么。我知道有时没有必要了解一切,最好继续前进……但好奇。

这是我的:

编辑:在下面包括他们建议的解决方案

编辑:在评论中澄清并回答我自己的问题

我尝试了这些实验,它显示inject“删除”了“穿上”的数组括号。也许不是最合适的思考方式?它确实有助于消除我的困惑。

0 投票
1 回答
269 浏览

ruby - 这两个 Ruby 符号有什么区别?

我在玩弄对象 ID 后发现了这一点。

第一个是幂运算符的符号;

但第二个不知何故不是?我假设它们在传递给#print 后看起来是一样的。但是有什么区别呢?其中一个是某种unicode符号吗?

更新:第二个可能是关键字参数的新双 splat,但我似乎无法验证这一点。

0 投票
2 回答
2896 浏览

python - 更改 *splat 和 **splatty-splat 运算符对我的对象执行的操作

你如何覆盖解包语法的结果*obj**obj

例如,您能否以某种方式创建一个thing行为如下的对象:

注意:通过 ("for x in thing") 的迭代__iter__从 *splat 解包返回不同的元素。

我看过operator.muland operator.pow,但这些函数只涉及两个操作数的用法,比如a*band a**b,并且似乎与 splat 操作无关。

0 投票
2 回答
843 浏览

ruby - Double-splat 运算符破坏性地修改了哈希——这是一个 Ruby 错误吗?

我注意到我发现**Ruby 2.1.1 中的 (double-splat) 运算符有一个非常令人惊讶的行为。

当在 a 之前使用键值对时**hash,哈希值保持不变;但是,当键值对仅在 之后使用**hash时,哈希值将被永久修改。

*为了比较,考虑数组中单运算符的行为:

数组始终保持不变。


我们是否认为有时具有破坏性的行为**是故意的,还是看起来更像是一个错误?

无论哪种情况,描述**操作员如何工作的文档在哪里?


我也在Ruby 论坛上问过这个问题。

更新

该错误已在 Ruby 2.1.3+ 中修复。

0 投票
0 回答
42 浏览

ruby - 在 Ruby 中链接双板

以下行为是错误还是功能?

使用获得:

如果是一项功能,在哪里可以阅读到它?谢谢!

问候,伊万

0 投票
2 回答
2615 浏览

ruby - 为什么带有 splat 参数的 Ruby 过程/块的行为与方法和 lambda 不同?

为什么带有 splat 参数的 Ruby (2.0) 过程/块的行为与方法和 lambda 不同?

这是对这种行为的确认,但没有解释: http: //makandracards.com/makandra/20641-careful-when-calling-a-ruby-block-with-an-array

0 投票
1 回答
748 浏览

ruby - 在 nil 上传递 splat 作为参数

下面的所有值让我用语法b调用一个方法。*args

有了nil,我希望得到nil,而不是参数错误:

这里发生了什么?

0 投票
1 回答
94 浏览

ruby - 获取 splat ruby​​ 中的变量数

如何在调用方法时计算作为 splat 参数传递的值的数量?

0 投票
2 回答
262 浏览

ruby - * 在参数位置的含义

假设arr是一个数组[[1,3],[2,5],[3,8]]。我想知道什么*意思。这是什么意思?

我尝试了以下