JS [{value:[‘甲’,‘乙’]},{value:[‘A’,‘B’,‘C’]}] 写个通用转换方法转换新数组[{name:'甲+A'},{name:'甲+B'},{name:'甲+C'},{name:'乙+A'},name:{'乙+B'},name:{'乙+C'},]
时间: 2024-10-12 20:10:43 浏览: 9
set-value:使用点符号设置对象上的嵌套属性
在JavaScript中,你可以通过遍历原始数组并组合每个元素的`value`和`name`属性来创建新的数组结构。这里是一个通用的转换方法:
```javascript
function transformArray(originalData) {
const result = [];
originalData.forEach(item => {
item.value.forEach(value => {
result.push({
name: `${item.value[0]}+${value}` // 如果只取第一个值作为前缀,可以去掉 `[0]`
});
});
});
return result;
}
// 示例数据
const input = [{ value: ['甲', '乙'] }, { value: ['A', 'B', 'C'] }];
const transformedArray = transformArray(input);
console.log(transformedArray); // 输出: [{name:'甲+A'},{name:'甲+B'},{name:'甲+C'},{name:'乙+A'},{name:'乙+B'},{name:'乙+C'}]
```
这个函数首先创建一个空的结果数组,然后遍历原始数组中的每个对象,再进一步遍历`value`数组中的每个元素,生成一个新的对象添加到结果数组中。`name`字段是通过将当前`value`和`item.value[0]`连接而成的。
如果你需要其他类型的转换或者其他细节,请告诉我,我会相应调整
阅读全文