红宝石哈希作为数组的第一个元素

我怀疑

我正在从API解析JSON。foo有时候,我有一个元素是一个哈希,而另一个是哈希数组。

foo: { ... }

foo: [
  { ... },
  { ... }
]

我只想使用Array(foo)总是获得至少包含一个元素的数组,但是它将哈希转换为[[..., ...], [..., ...]]除了使用之外,还有一种优雅的方式来处理此问题foo.is_a?(Hash/Array)吗?

严厉的古普塔

添加到@yez答案,如果您不使用activesupport,则可以扩展Array为具有以下wrap功能:

def Array.wrap(object)
  if object.nil?
    []
  elsif object.respond_to?(:to_ary)
    object.to_ary || [object]
  else
    [object]
  end
end

http://apidock.com/rails/Array/wrap/class复制

实现它的另一种粗略方法是:

def Array.wrap(object)
  return [] if object.nil?
  [object].flatten(1)
end

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

将第一个数组的元素作为哈希键,将数组数组转换为哈希值

来自分类Dev

将第一个数组的元素作为哈希键,将数组数组转换为哈希值

来自分类Dev

使用一个红宝石数组的元素作为另一个的索引

来自分类Dev

使用键作为字符串,按哈希的第一个元素对哈希数组进行排序

来自分类Dev

红宝石从数组中删除一个元素

来自分类Dev

Ruby哈希表数组;仅保留包含特定键=>值对的第一个元素

来自分类Dev

哈希定义到导致空点异常的数组的第一个元素

来自分类Dev

红宝石组收集通过foreach中的第一个字母

来自分类Dev

比较红宝石中的两个哈希数组,除了一个键

来自分类Dev

比较红宝石中的两个哈希数组,除了一个键

来自分类Dev

结构指针数组作为struct的第一个元素

来自分类Dev

使用数组的第一个元素作为顶部实现堆栈

来自分类Dev

如何添加一个空字符串作为现有数组的第一个元素?

来自分类Dev

替换数组的第一个 `m` 个元素

来自分类Dev

选择div的第一个图像作为数组

来自分类Dev

为红宝石数组的每个元素创建一个实例

来自分类Dev

红宝石/正则表达式获取每个单词的第一个字母

来自分类Dev

如何获取Perl中第二个哈希数组中不存在的第一个哈希数组元素

来自分类Dev

for循环未处理数组的第一个元素

来自分类Dev

获取空数组的第一个元素

来自分类Dev

如何按数组的第一个元素分组?

来自分类Dev

放大没有第一个元素的数组

来自分类Dev

获取对数组的第一个元素(Swift)

来自分类Dev

数组的Visual Basic第一个元素

来自分类Dev

指向数组第一个元素的指针的地址?

来自分类Dev

数组中的第一个非负元素

来自分类Dev

JSON数组读取第一个元素?

来自分类Dev

bash:缺少数组的第一个元素

来自分类Dev

AngularJS:显示响应数组的第一个元素

Related 相关文章

  1. 1

    将第一个数组的元素作为哈希键,将数组数组转换为哈希值

  2. 2

    将第一个数组的元素作为哈希键,将数组数组转换为哈希值

  3. 3

    使用一个红宝石数组的元素作为另一个的索引

  4. 4

    使用键作为字符串,按哈希的第一个元素对哈希数组进行排序

  5. 5

    红宝石从数组中删除一个元素

  6. 6

    Ruby哈希表数组;仅保留包含特定键=>值对的第一个元素

  7. 7

    哈希定义到导致空点异常的数组的第一个元素

  8. 8

    红宝石组收集通过foreach中的第一个字母

  9. 9

    比较红宝石中的两个哈希数组,除了一个键

  10. 10

    比较红宝石中的两个哈希数组,除了一个键

  11. 11

    结构指针数组作为struct的第一个元素

  12. 12

    使用数组的第一个元素作为顶部实现堆栈

  13. 13

    如何添加一个空字符串作为现有数组的第一个元素?

  14. 14

    替换数组的第一个 `m` 个元素

  15. 15

    选择div的第一个图像作为数组

  16. 16

    为红宝石数组的每个元素创建一个实例

  17. 17

    红宝石/正则表达式获取每个单词的第一个字母

  18. 18

    如何获取Perl中第二个哈希数组中不存在的第一个哈希数组元素

  19. 19

    for循环未处理数组的第一个元素

  20. 20

    获取空数组的第一个元素

  21. 21

    如何按数组的第一个元素分组?

  22. 22

    放大没有第一个元素的数组

  23. 23

    获取对数组的第一个元素(Swift)

  24. 24

    数组的Visual Basic第一个元素

  25. 25

    指向数组第一个元素的指针的地址?

  26. 26

    数组中的第一个非负元素

  27. 27

    JSON数组读取第一个元素?

  28. 28

    bash:缺少数组的第一个元素

  29. 29

    AngularJS:显示响应数组的第一个元素

热门标签

归档