Javascript lodash/fp扩展不';不要像在lodash中那样对第一个参数进行变异

Javascript lodash/fp扩展不';不要像在lodash中那样对第一个参数进行变异,javascript,lodash,Javascript,Lodash,,\ extend(object,[sources])修改第一个参数 var dest={ a:1 }; _.延伸(目的地){ b:2 }); //期望{“a”:1,“b”:2} //实际{“a”:1,“b”:2} 控制台日志(dest) 这不是一个bug:不变性是函数式编程的一个特点,在本指南的一开始就说明了这一点: lodash/fp模块促进了更具功能性的编程(fp) 通过导出lodash实例及其方法创建友好样式 包装以生成不可变的自动curried iteratee first data

\ extend(object,[sources])
修改第一个参数

var dest={
a:1
};
_.延伸(目的地){
b:2
});
//期望{“a”:1,“b”:2}
//实际{“a”:1,“b”:2}
控制台日志(dest)

这不是一个bug:不变性是函数式编程的一个特点,在本指南的一开始就说明了这一点:

lodash/fp模块促进了更具功能性的编程(fp) 通过导出lodash实例及其方法创建友好样式 包装以生成不可变的自动curried iteratee first data last 方法

我认为你应该重新考虑使用lodash/fp或突变,它们不能很好地结合在一起



编辑:我搞错了,他们可以一起玩:请看

这不是一个bug:不变性是函数式编程的一个特点,在指南的一开始就说明了这一点:

lodash/fp模块促进了更具功能性的编程(fp) 通过导出lodash实例及其方法创建友好样式 包装以生成不可变的自动curried iteratee first data last 方法

我认为你应该重新考虑使用lodash/fp或突变,它们不能很好地结合在一起



编辑:我搞错了,它们可以一起玩:请参见解决方案是配置lodash/fp以允许突变

var fp=\转换({
“不可变”:false
})
var dest={
a:1
};
扩展(目的地){
b:2
});
//期望{“a”:1,“b”:2}
//实际{“a”:1,“b”:2}
控制台日志(dest)

解决方案是配置lodash/fp以允许突变

var fp=\转换({
“不可变”:false
})
var dest={
a:1
};
扩展(目的地){
b:2
});
//期望{“a”:1,“b”:2}
//实际{“a”:1,“b”:2}
控制台日志(dest)


我现在明白了,但在我的情况下,我需要改变
这个
这个
只能变异,不能分配给。我现在明白了,但在我的情况下,我需要变异
这个
<代码>此
只能进行变异,不能分配给。