当前位置:  开发笔记 > 后端 > 正文

是否有可能在Ruby中反转splat?

如何解决《是否有可能在Ruby中反转splat?》经验,为你挑选了1个好方法。



1> sawa..:

关于*(inverse_splat(foo)),它没有意义.splatting的结果通常是一系列对象,它们不是对象.这样的东西在Ruby中不存在.

而在这一点上,你似乎做出的假设,即,inverse_splat并且*可以互换的顺序,结果是错误的.

关于 inverse_splat(*(foo))

不可能有这样的逆.这是因为splat *内部调用to_a,这不是一对一的映射.

[[:a, 1], [:b, 2]].to_a
# => [[:a, 1], [:b, 2]]
{a: 1, b: 2}.to_a
# => [[:a, 1], [:b, 2]]

只能在一对一地图上定义逆.

如果你忽视这些情况并想继续探索是否有某些东西接近它,那么接近的是[...... ]字面意思.

推荐阅读
mobiledu2402851373
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有