【发布时间】:2021-05-19 15:59:59
【问题描述】:
我正在尝试遍历 consoleOuputParamsOBJ 并更新我的 taskparamscompiled 对象列表中的记录
期望的输出
{
"process00x00": {
"-i": "D:\\Code\\UnitTest\\ConsoleApp\\1\\00x00.png",
"-tr": 16,
"-tc": 16,
"-ofr": 16,
"-ofc": 16,
"-outfile": "\"D:\\Code\\UnitTest\\ConsoleApp\\Process\\1\""
},
"process00x01": {
"-i": "D:\\Code\\UnitTest\\ConsoleApp\\1\\00x01.png",
"-tr": 16,
"-tc": 16,
"-ofr": 16,
"-ofc": 16,
"-outfile": "\"D:\\Code\\UnitTest\\ConsoleApp\\Process\\1\""
},
"process00x02": {
"-i": "D:\\Code\\UnitTest\\ConsoleApp\\1\\00x02.png",
"-tr": 16,
"-tc": 16,
"-ofr": 16,
"-ofc": 16,
"-outfile": "\"D:\\Code\\UnitTest\\ConsoleApp\\Process\\1\""
}
我目前正在做什么,进程名称似乎正在工作,因为它正在更新该值,但它用来更新它的数据只是 taskparamscompiled 数据集中的最后一条记录。
当前代码更新:
var consoleOutputParamsOBJ = [{
name: '00x00',
filepath: 'D:\\Code\\UnitTest\\ConsoleApp\\1\\00x00.png'
},
{
name: '00x01',
filepath: 'D:\\Code\\UnitTest\\ConsoleApp\\1\\00x01.png'
},
{
name: '00x02',
filepath: 'D:\\Code\\UnitTest\\ConsoleApp\\1\\00x02.png'
},
{
name: '01x00',
filepath: 'D:\\Code\\UnitTest\\ConsoleApp\\1\\01x00.png'
},
{
name: '01x01',
filepath: 'D:\\Code\\UnitTest\\ConsoleApp\\1\\01x01.png'
},
{
name: '01x02',
filepath: 'D:\\Code\\UnitTest\\ConsoleApp\\1\\01x02.png'
}
]
var taskparamscompiled = {
haralick_process00x00: {
'-i': '',
'-tr': 16,
'-tc': 16,
'-ofr': 16,
'-ofc': 16,
'-outfile': '"D:\\Code\\UnitTest\\ConsoleApp\\Process\\1"'
},
haralick_process00x01: {
'-i': '',
'-tr': 16,
'-tc': 16,
'-ofr': 16,
'-ofc': 16,
'-outfile': '"D:\\Code\\UnitTest\\ConsoleApp\\Process\\1"'
},
haralick_process00x02: {
'-i': '',
'-tr': 16,
'-tc': 16,
'-ofr': 16,
'-ofc': 16,
'-outfile': '"D:\\Code\\UnitTest\\ConsoleApp\\Process\\1"'
},
haralick_process01x00: {
'-i': '',
'-tr': 16,
'-tc': 16,
'-ofr': 16,
'-ofc': 16,
'-outfile': '"D:\\Code\\UnitTest\\ConsoleApp\\Process\\1"'
},
haralick_process01x01: {
'-i': '',
'-tr': 16,
'-tc': 16,
'-ofr': 16,
'-ofc': 16,
'-outfile': '"D:\\Code\\UnitTest\\ConsoleApp\\Process\\1"'
},
haralick_process01x02: {
'-i': '',
'-tr': 16,
'-tc': 16,
'-ofr': 16,
'-ofc': 16,
'-outfile': '"D:\\Code\\UnitTest\\ConsoleApp\\Process\\1"'
}
}
var dynamicTaskParamsBaseOBJ = {
'-i': '',
'-tr': 16,
'-tc': 16,
'-ofr': 16,
'-ofc': 16,
'-outfile': '"D:\\Code\\UnitTest\\ConsoleApp\\HaralickProcess\\1"'
}
var dynamicTaskNameBaseOBJ = 'haralick_process'
var taskparamscompiled = consoleOutputParamsOBJ.reduce(
(accumulator, elem) => {
const taskname = dynamicTaskNameBaseOBJ + elem.name;
return {
...accumulator,
[taskname]: dynamicTaskParamsBaseOBJ,
};
}, {}
);
consoleOutputParamsOBJ.forEach((obj) => {
var processname = dynamicTaskNameBaseOBJ + obj.name;
filepath = obj.filepath;
taskparamscompiled[processname]['-i'] = filepath;
});
console.log('consoleOutputParamsOBJ::', consoleOutputParamsOBJ, ' \n taskparamscompiled::', taskparamscompiled);
【问题讨论】:
标签: javascript node.js arrays foreach