我編寫了下面的函數來返回匹配特定模式的對象中的所有鍵。它看起來真的很圓,因爲在對象中沒有過濾器函數,當你使用它時,所有的鍵都丟失了。這是使用lodash過濾對象鍵的唯一方法嗎?用lodash中的鍵過濾對象
export function keysThatMatch (pattern) {
return (data) => {
let x = _.chain(data)
.mapValues((value, key) => {
return [{
key: key,
value: value
}]
})
.values()
.filter(data => {
return data[0].key.match(pattern)
})
.zipWith(data => {
let tmp = {}
tmp[data[0].key] = data[0].value
return tmp
})
.value()
return _.extend.apply(null, x)
}
}
可能的複製開始鍵的對象[如何篩選與lodash對象的鍵?](https://stackoverflow.com/問題/ 30726830/how-to-filter-key-of-object-with-lodash) – trushkevich