13
這兩種方法都聽起來像他們應該做同樣的事情,但他們似乎不是彼此的別名。 in_groups
和in_groups_of
有什麼區別?rails in_groups和in_groups_of有什麼區別?
這兩種方法都聽起來像他們應該做同樣的事情,但他們似乎不是彼此的別名。 in_groups
和in_groups_of
有什麼區別?rails in_groups和in_groups_of有什麼區別?
的文檔是很清楚的。
in_groups
(number, fill_with = nil)
拆分或數量的組的在陣列上進行迭代,以填充任何fill_with剩餘時隙,除非它是假的。
in_groups_of
(number, fill_with = nil)
拆分或迭代的陣列上在組大小的數,填充與fill_with任何剩餘的時隙,除非它是假的。
實施例:
# Splits in groups of 2
["a","b","c","d","e","f"].in_groups_of(2)
# => [["a", "b"], ["c", "d"], ["e", "f"]]
# Splits in 2 groups
["a","b","c","d","e","f"].in_groups(2)
# => [["a", "b", "c"], ["d", "e", "f"]]
一個是基本上切片,其他使他們在偶數大小的組。得到它了。 – BookOfGreg
另一種想法是:'in_groups(n)'返回一個帶有'n' * rows *的二維數組,而'in_groups_of(n)'返回一個帶有'n' *列*的二維數組。 – Stefan