在这里,我正在将数组转换为所需的格式。 parsedValues的输出为[“ abcdefgh(4034343),Mikhail(900002)”] 和Iam尝试将其转换为[“ abcdefgh(4034343)”,“ Mikhail(900002)”]
如何将[“ abcdefgh(4034343),Mikhail(900002)”]转换为[“ abcdefgh(4034343)”,“ Mikhail(900002)”]?
private transformUser(userIdsString: any): string[] {
const parsedUserIdsArray = userIdsString;
console.log(parsedUserIdsArray);
const parsedValues = parsedUserIdsArray[4].userids;
console.log(parsedValues);
const splitValues = parsedValues.split(',');
console.log(splitValues);
const trimmedValues = splitValues.map(str => str.trim());
console.log(trimmedValues);
return trimmedValues;
}
The console.log(trimmedValues) is
(2) ["["abcdefgh(4034343)", "Mikhail(900002)"]"]
0: "["abcdefgh(4034343)"
1: "Mikhail(900002)"]"
length: 2
__proto__: Array(0)
预期是: (2)[“ abcdefgh(4034343)”,“ Mikhail(900002)”] 0:“ abcdefgh(4034343)” 1:“ Mikhail(900002)” 长度:2 proto :数组(0)
答案 0 :(得分:1)
您可以在字符串上使用split
,以从分隔符(在这种情况下为,
)中获取数组。如果只有一个连接字符串,则可以...
["abcdefgh(4034343), Mikhail(900002), Someone(12934)"][0].split(', ')
获取新数组。
如果原始数组具有多个字符串,则需要连接所有数组...
["abcdefgh(4034343), Mikhail(900002)", "Someone(12934)"]
.map(item => item.split(', '))
.reduce( (acc, item) => [...acc, ...item], [])
答案 1 :(得分:0)
尝试一下
var input = ["abcdefgh(4034343), Mikhail(900002)"]
input.reduce(function(o,i){
var values = i.split(',');
if(values.length > 0){
o = o.concat(values);
}return o;},[]);
Output - ["abcdefgh(4034343)", " Mikhail(900002)"]
答案 2 :(得分:0)
const trimmedValues = parsedValues[0].split(', ');