下面是如何extend
/assign
作品:对于源的每个属性,复制其价值,是到目的地。如果属性值本身是对象,则不会对其属性进行递归遍历。整个对象将从源中获取并设置到目标中。
下面是如何merge
工作的:对于源的每个属性,检查如果该属性是对象本身。如果是,则递归关闭并尝试将子对象属性从源映射到目标。因此,实质上,我们将对象层次结构从源到目标进行合并。对于extend
/assign
,它是从源到目标的简单一级属性副本。
Lodash-.extend()/ .assign()和.merge()之间的区别
下面是如何extend
/assign
作品:对于源的每个属性,复制其价值,是到目的地。如果属性值本身是对象,则不会对其属性进行递归遍历。整个对象将从源中获取并设置到目标中。
下面是如何merge
工作的:对于源的每个属性,检查如果该属性是对象本身。如果是,则递归关闭并尝试将子对象属性从源映射到目标。因此,实质上,我们将对象层次结构从源到目标进行合并。对于extend
/assign
,它是从源到目标的简单一级属性副本。