0
與紅寶石哈希#reject/delete_if方法最接近的是什麼?相當於紅寶石哈希#在咖啡文件中拒絕
{a:1, b:2, c:3, d:4}.reject { |k,v| v > 2 }
=> {:a=>1, :b=>2}
這個快速版本使用key, value of <Object>
,但它不是優雅,缺乏通過任意條件的能力(如塊或其他方式)
params = {a:1, b:2, c:3}
filter = (hash)->
result = {}
(result[key] = value unless value > 2) for key, value of params
result
console.log(filter(params))
下劃線也有類似的_.omit
方法,但只適用在鍵上。
你可以通過一個函數來'過濾器'('filter(obj,(k,v) - > ...)'),然後'result [k] = v for k,v當參數fn(v) –