Ruby数组奇怪的语法

Ruby数组奇怪的语法,ruby,internals,Ruby,Internals,为什么这样做有效?(至少在Ruby 2.0上) a=[1,2,] 如果我再加一个逗号,就会出现语法错误 感谢定义数组时,Ruby允许(但不要求)最后一个元素后面有逗号: a = [1, 2,] 当数组定义位于多行上时,这尤其方便: a = [ 1, 2, ] 由于每个元素都在自己的行上,并且每个元素都有一个尾随逗号,因此编辑列表非常简单:可以添加、删除、重新排序等等,而不必担心尾随逗号,也不必触摸除正在编辑的行以外的任何行。例如,如果添加新元素,则不必在前面的元素中添加逗号 一行中不

为什么这样做有效?(至少在Ruby 2.0上)

a=[1,2,]

如果我再加一个逗号,就会出现语法错误


感谢定义数组时,Ruby允许(但不要求)最后一个元素后面有逗号:

a = [1, 2,]
当数组定义位于多行上时,这尤其方便:

a = [
  1,
  2,
]
由于每个元素都在自己的行上,并且每个元素都有一个尾随逗号,因此编辑列表非常简单:可以添加、删除、重新排序等等,而不必担心尾随逗号,也不必触摸除正在编辑的行以外的任何行。例如,如果添加新元素,则不必在前面的元素中添加逗号

一行中不允许有两个逗号

散列具有相同的便利性:

h = {
  :a => 1,
  :b => 2,
}

定义数组时,Ruby允许(但不要求)最后一个元素后面有逗号:

a = [1, 2,]
当数组定义位于多行上时,这尤其方便:

a = [
  1,
  2,
]
由于每个元素都在自己的行上,并且每个元素都有一个尾随逗号,因此编辑列表非常简单:可以添加、删除、重新排序等等,而不必担心尾随逗号,也不必触摸除正在编辑的行以外的任何行。例如,如果添加新元素,则不必在前面的元素中添加逗号

一行中不允许有两个逗号

散列具有相同的便利性:

h = {
  :a => 1,
  :b => 2,
}

定义数组时,Ruby允许(但不要求)最后一个元素后面有逗号:

a = [1, 2,]
当数组定义位于多行上时,这尤其方便:

a = [
  1,
  2,
]
由于每个元素都在自己的行上,并且每个元素都有一个尾随逗号,因此编辑列表非常简单:可以添加、删除、重新排序等等,而不必担心尾随逗号,也不必触摸除正在编辑的行以外的任何行。例如,如果添加新元素,则不必在前面的元素中添加逗号

一行中不允许有两个逗号

散列具有相同的便利性:

h = {
  :a => 1,
  :b => 2,
}

定义数组时,Ruby允许(但不要求)最后一个元素后面有逗号:

a = [1, 2,]
当数组定义位于多行上时,这尤其方便:

a = [
  1,
  2,
]
由于每个元素都在自己的行上,并且每个元素都有一个尾随逗号,因此编辑列表非常简单:可以添加、删除、重新排序等等,而不必担心尾随逗号,也不必触摸除正在编辑的行以外的任何行。例如,如果添加新元素,则不必在前面的元素中添加逗号

一行中不允许有两个逗号

散列具有相同的便利性:

h = {
  :a => 1,
  :b => 2,
}

事实上,这是在多行中写入数组/哈希的推荐方法。在向方法传递参数时也可以这样做。事实上,这是在多行中写入数组/哈希的推荐方法。在向方法传递参数时也可以这样做。事实上,这是在多行中写入数组/哈希的推荐方法。向方法传递参数时也可以这样做。事实上,这是在多行中写入数组/哈希的推荐方法。向方法传递参数时也可以这样做。