ruby - 通过哈希映射返回 nil?
{"key_a" => "value_a", "key_b" => "value_b", "key_c" => { "key_c_a" => nil, "key_c_b" => nil, "key_c_c" => "value_c_c"}, "key_d" => nil, "key_e" => nil }
我如何映射哈希,以便得到结果为“key_c_a”、“key_c_b”、“key_d”和key_e”?
我不断得到我的答案作为一个空数组,这是模块中使用的方法主班
def self.get_null_keys(container)
container.map do |key, value|
if value.is_a?(Array)
value.map { |field| render_null_fields(field) }
elsif value.is_a?(Hash)
render_null_fields(value)
elsif value.nil?
key
end
end
end
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
简单的递归方法:
Naive recursive way to do it:
递归地执行:
除了使用
inject
作为骨架,您还可以使用each
:或者:
Do it recursively:
Instead of
inject
as a skeleton you can also useeach
:Either: