在数组中的对象值后添加逗号
Add comma after object value in array
我正在尝试获得如下结果,以便调用 SQL 查询。它是一个对象数组(每个对象都有一个键,这将是 VALUE
和一个值。值必须用单引号括起来,末尾有逗号):
[
{ VALUE: 'A', },
{ VALUE: 'B', },
{ VALUE: 'C', },
{ VALUE: 'D', },
{ VALUE: 'E', },
{ VALUE: 'F' }
]
我试过使用 for 函数,在该函数中我为列表中的每个元素添加了一个对象。这是我得到的结果:
代码:
let arr = [];
const len = reqBody.values.length;
for (let i = 0; i < len; i++)
{
arr.push( { VALUE: reqBody.values[i] } )
}
结果:
[
{ VALUE: 'A' },
{ VALUE: 'B' },
{ VALUE: 'C' },
{ VALUE: 'D' },
{ VALUE: 'E' },
{ VALUE: 'F' }
]
我尝试使用 map
箭头函数并在其末尾添加 join
以便尝试在每个值后添加逗号(因此对于结果的第二行代码类似于:{ VALUE: 'A', }
) 但我无法让它工作,因为 returns 一个字符串数组,而不是我需要的对象。
这是上面描述的代码:
代码:
let arr = [];
const len = reqBody.values.length;
for (let i = 0; i < len; i++)
{
arr.push(Object.values({ VALUE: reqBody.values[i] }).map(v => `{ VALUE: '${v}', }`).join(','))
}
结果:
[
"{ VALUE: 'A', }",
"{ VALUE: 'B', }",
"{ VALUE: 'C', }",
"{ VALUE: 'D', }",
"{ VALUE: 'E', }",
"{ VALUE: 'F', }",
]
有什么方法可以将 map 函数中的字符串转换为对象吗?
您需要将整个事物构造为串联字符串,而不是数组。
let reqBody = {
values: ['A', 'B', 'C']
};
let items = reqBody.values.map(v => `{ VALUE: '${v}', }`);
let result = '[\n ' + items.join(',\n ') + '\n]';
console.log(result);
我正在尝试获得如下结果,以便调用 SQL 查询。它是一个对象数组(每个对象都有一个键,这将是 VALUE
和一个值。值必须用单引号括起来,末尾有逗号):
[
{ VALUE: 'A', },
{ VALUE: 'B', },
{ VALUE: 'C', },
{ VALUE: 'D', },
{ VALUE: 'E', },
{ VALUE: 'F' }
]
我试过使用 for 函数,在该函数中我为列表中的每个元素添加了一个对象。这是我得到的结果:
代码:
let arr = [];
const len = reqBody.values.length;
for (let i = 0; i < len; i++)
{
arr.push( { VALUE: reqBody.values[i] } )
}
结果:
[
{ VALUE: 'A' },
{ VALUE: 'B' },
{ VALUE: 'C' },
{ VALUE: 'D' },
{ VALUE: 'E' },
{ VALUE: 'F' }
]
我尝试使用 map
箭头函数并在其末尾添加 join
以便尝试在每个值后添加逗号(因此对于结果的第二行代码类似于:{ VALUE: 'A', }
) 但我无法让它工作,因为 returns 一个字符串数组,而不是我需要的对象。
这是上面描述的代码:
代码:
let arr = [];
const len = reqBody.values.length;
for (let i = 0; i < len; i++)
{
arr.push(Object.values({ VALUE: reqBody.values[i] }).map(v => `{ VALUE: '${v}', }`).join(','))
}
结果:
[
"{ VALUE: 'A', }",
"{ VALUE: 'B', }",
"{ VALUE: 'C', }",
"{ VALUE: 'D', }",
"{ VALUE: 'E', }",
"{ VALUE: 'F', }",
]
有什么方法可以将 map 函数中的字符串转换为对象吗?
您需要将整个事物构造为串联字符串,而不是数组。
let reqBody = {
values: ['A', 'B', 'C']
};
let items = reqBody.values.map(v => `{ VALUE: '${v}', }`);
let result = '[\n ' + items.join(',\n ') + '\n]';
console.log(result);