Javascript 仅克隆不是函数的属性
基本上,我有一些对象,我只需要它们的数据,而不需要它们内部的任何函数,例如:Javascript 仅克隆不是函数的属性,javascript,lodash,Javascript,Lodash,基本上,我有一些对象,我只需要它们的数据,而不需要它们内部的任何函数,例如: var obj1 = { test: function() { doSomeStuff(); }, foo: 'bar', } var obj2 = _.someThing(obj1); > obj2 = { foo: 'bar' } 我已经开始做类似的事情了但这不是我想要的 _.mapValues(obj1, function(value) { if (_.isFunction
var obj1 = {
test: function() {
doSomeStuff();
},
foo: 'bar',
}
var obj2 = _.someThing(obj1);
> obj2 = {
foo: 'bar'
}
我已经开始做类似的事情了但这不是我想要的
_.mapValues(obj1, function(value) {
if (_.isFunction(value)) {
return false;
}
return value
});
> { test: false, foo: 'bar' }
使用lodash的首选解决方案
您可以像这样使用函数
var res = _.pick(obj1, function (el) {
return !_.isFunction(el);
})
“但这不是我想要的”你不想要的是什么?什么是你不想要的?你被困在哪里?你似乎拥有所有的部分。@T.J.Crowder我不需要设置
test
属性。是的,它是。。。塔克斯。