【发布时间】:2014-08-20 18:19:47
【问题描述】:
我目前正在克隆一个对象:
var copy = JSON.parse(JSON.stringify(original));
当我尝试 lodash - 似乎推荐的方法是 cloneDeep() 但这对我来说一团糟。我的对象部分由 Mongoose 查询的结果组成,这可能是造成这种情况的原因。
原文:
template: 'email/receipt.swig',
templateVars: {
code: '299137819',
用 lodash 克隆:
template: 'email/receipt.swig',
templateVars: {
'$__': {
strictMode: true,
selected: undefined,
shardval: undefined,
saveError: undefined,
validationError: undefined,
adhocPaths: undefined,
removing: undefined,
inserting: true,
version: undefined,
getters: [Object],
_id: undefined,
populate: undefined,
populated: [Object],
wasPopulated: false,
scope: [Circular],
activePaths: [Object],
ownerDocument: undefined,
fullPath: undefined
},
isNew: false,
errors: undefined,
_maxListeners: 0,
_events: { save: [Object], isNew: [Object] },
_doc: {
code: '299137819'
这里发生了什么?这显然是 Mongo 的东西,但为什么要重新格式化?有没有办法用 lodash 制作一个精确的副本?并不是说我目前的方法很痛苦 - 只是想了解为什么人们说 cloneDeep 是等价的。
【问题讨论】:
标签: javascript node.js lodash