假设我有一个看起来像这样的对象 -
data =
a: 1
b: 2
c:
d: 3
e: 4
f:
g: 4
h:
i: 9
我想编写一个函数,它本质上是深度克隆这个对象,但用它们的最小倍数 10 替换数字。
a: 10
b: 20
c:
d: 30
e: 40
f:
g: 40
h:
i: 90
我想使用 lodash 或下划线来编写最少的代码。这是我目前所做的 -
execute = (key) ->
#console.log typeof key, key
if typeof key is 'number'
return key * 10
result = {}
_.forIn key, (value, name) ->
result[name] = execute value
return result
请推荐一些优雅干净的东西。
更新:
在经历了更多的lodash lib之后,我找到了一个更好的方法 -
_.cloneDeep data,(value) -> value * 10 if typeof value is 'number'