Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/369.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在ramdajs中设置对象数组的值_Javascript_Arrays_Ramda.js - Fatal编程技术网

Javascript 在ramdajs中设置对象数组的值

Javascript 在ramdajs中设置对象数组的值,javascript,arrays,ramda.js,Javascript,Arrays,Ramda.js,这是给周围的拉姆达斯大师的。考虑如下所示代码段中的对象数组arr。 要使用镜头设置第一个对象的值,例如6, 人们会期望结果是一个数组。然而,情况似乎并非如此,而是结果是一个对象。 例如: 预期结果: [{a: 6}, {a: 2}, {a: 3}] 实际结果: {0: {a: 6}, 1: {a: 2}, 2: {a: 3}} 获取预期数组的一种方法是从对象中提取值: result = R.values(result) 是否有更好的方法在对象数组中设置值,以便结果也是数组 使用 resul

这是给周围的拉姆达斯大师的。考虑如下所示代码段中的对象数组arr。 要使用镜头设置第一个对象的值,例如6, 人们会期望结果是一个数组。然而,情况似乎并非如此,而是结果是一个对象。 例如:

预期结果:

[{a: 6}, {a: 2}, {a: 3}]
实际结果:

{0: {a: 6}, 1: {a: 2}, 2: {a: 3}}
获取预期数组的一种方法是从对象中提取值:

result = R.values(result)
是否有更好的方法在对象数组中设置值,以便结果也是数组

使用

result = R.values(result)
import R from 'ramda'
let arr = [{a: 1}, {a: 2}, {a: 3}]
let aLens = R.compose(R.lensIndex(0), R.lensPath('a'))
let result = R.set(aLens, 6, arr)