JS 的扩展语法是否出现在其他语言中?

Dan*_*kin 6 javascript programming-languages spread-syntax

我第一次遇到 JavaScript 中的 spread( ...) 语法,并且逐渐欣赏它可以做的许多事情,但我承认我仍然觉得它很奇怪。其他语言中是否有等效项?在那里它叫什么?

qjn*_*jnr 3

是的,在 Ruby 中:splat运算符。它是一个星号而不是三个点:

def foo(a, *b, **c)
   [a, b, c]
end
Run Code Online (Sandbox Code Playgroud)
> foo 10
=> [10, [], {}]
> foo 10, 20, 30  
=> [10, [20, 30], {}] 
> foo 10, 20, 30, d: 40, e: 50
=> [10, [20, 30], {:d=>40, :e=>50}]
> foo 10, d: 40, e: 50
=> [10, [], {:d=>40, :e=>50}]
Run Code Online (Sandbox Code Playgroud)

(从这个答案复制)

  • 我相信还有 python 和 perl。也使用星号。 (2认同)