将元素推送到不可变列表而不重新分配变量
Push element to an immutable List without reassigning variable
如何在迭代不可变列表时避免重新分配变量以创建另一个列表。我有下面的代码,它工作正常,
function foobar(stateValue) {
let propsValue = List();
stateValue.forEach((categoryItem) => {
categoryItem.get('coveragePayorIds', List()).forEach((
coveragePayorId) => {
const category = categoryItem.get('category');
propsValue = propsValue.push({
category,
coverage_payor_id: coveragePayorId,
});
});
});
return propsValue;
}
我正在尝试使 propsValue
成为常量。如何实现?
forEach
都是关于副作用的,不适用于不可变的结构或变量。不要使用它。
function foobar(stateValue) {
return List(stateValue).flatMap(categoryItem => {
const category = categoryItem.get('category');
return categoryItem.get('coveragePayorIds', List()).map(coverage_payor_id =>
({category, coverage_payor_id})
);
});
}
如何在迭代不可变列表时避免重新分配变量以创建另一个列表。我有下面的代码,它工作正常,
function foobar(stateValue) {
let propsValue = List();
stateValue.forEach((categoryItem) => {
categoryItem.get('coveragePayorIds', List()).forEach((
coveragePayorId) => {
const category = categoryItem.get('category');
propsValue = propsValue.push({
category,
coverage_payor_id: coveragePayorId,
});
});
});
return propsValue;
}
我正在尝试使 propsValue
成为常量。如何实现?
forEach
都是关于副作用的,不适用于不可变的结构或变量。不要使用它。
function foobar(stateValue) {
return List(stateValue).flatMap(categoryItem => {
const category = categoryItem.get('category');
return categoryItem.get('coveragePayorIds', List()).map(coverage_payor_id =>
({category, coverage_payor_id})
);
});
}