Lo-Dash _.pick()

时间:2014-06-24 22:36:39

标签: deep-copy lodash shallow-copy

为什么在页面上提供文档:

Lo-Dash documentation

表示:

_。pick(object,[callback],[thisArg])

创建由指定属性组成的浅对象对象。属性名称可以指定为单个参数或属性名称数组。如果提供了回调,则将为对象的每个属性执行回调选择回调返回的属性。回调绑定到thisArg并使用三个参数调用; (值,键,对象)。

当我测试它时,我会得到深刻的副本。使用此方法创建的原始对象和对象之间没有连接。

1 个答案:

答案 0 :(得分:0)

var obj = {x: 5},
    foo = {k1: obj, k2: {a: 0}},
    picked = _.pick(foo, 'k1');  // -> picked = { k1: {x: 5 } }

picked.k1.x = 6;
console.log(picked);             // { k1: { x: 6 } }
console.log(obj);                // { x: 6 }