任何人都可以向我解释这个数组声明吗?

只是想知道数组中最后一个逗号的存在之间的区别,如果有的话

>> [1,2,3] => [1, 2, 3] >> [1,2,3,] => [1, 2, 3] 

第二个数组仍然有效,没有例外

谢谢

没有区别。 在Ruby中,您可以自由地向数组添加尾随逗号。 它使语法如下:

 a = [ 1, 2, 3, ] 

在某些情况下更好一点(例如,如果你想添加一个元素,你只需要添加一个4,行,而不必担心在最后一行检查逗号)。

它不是错误,只是一个空值(编译器忽略),但我建议你阅读Understanding Ruby Arrays

数组没有什么特别之处。

 [1,2,3] 

是相同的

 Array.[](1,2,3) 

所以这些值只是方法调用参数。 这同样适用于

 {a: 1, b: 2} 

这是一样的

 Hash.[](:a, 1, :b, 2) 

在方法调用参数中允许尾随逗号的原因仅仅是因为Ruby的设计是这样的,为了方便起见, @mipadi提到了这@mipadi