我的 params
看起来像这样:
params = [{:limit=>5}, {:skip=>0}, {:asc=>""}, {:desc=>""}]
我想删除值为0
或空字符串的散列元素。我尝试这样做:
params.reject { |h| h.values !== 0 }
但这给了我一个语法错误
还试过:
params.select { |h| h.values != 0 || h.values != "" }
但这没有给我任何帮助。我做错了什么?
最佳答案
你有一个散列数组,所以你必须对每个散列进行操作。
params.reject { |hash| hash.any? { |_, v| [0, ''].include?(v) }}
#=> [{:limit=>5}]
关于arrays - 如何从哈希数组中过滤掉哈希?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41341839/