嗨,我可以将空字符串转换为空字符串吗?
我有一个这样的样本数据
'To':['test@gmail.com','test2@gmail.com','null','test3@gmail.com','null','null']
let toEmailAddress = _.toString(To)
现在它将变为
toEmailAddress =
'test@gmail.com','test2@gmail.com','null','test3@gmail.com','null','null'
如何检查或将'null'替换为空字符串或空?
我知道我将使用_.replace
或javascript .replace
,但我不知道
我需要解决的最终输出看起来像这样
toEmailAddress =
'test@gmail.com','test2@gmail.com','test3@gmail.com'
答案 0 :(得分:1)
由于您已经在使用lodash,因此可以使用_.filter(或普通的Array.filter)
您想要实现的是过滤掉嘈杂值,并且仅保留好个值。您可以使用以下内容:
_.filter(['test@gmail.com','test2@gmail.com','null','test3@gmail.com','null','null'], v => v && v !== 'null')
,它将为您提供['test@gmail.com','test2@gmail.com','test3@gmail.com']
。
不使用lodash的情况下,可以使用以下命令:['test@gmail.com','test2@gmail.com','null','test3@gmail.com','null','null'].filter(v => v && v !== 'null')
答案 1 :(得分:1)
您可以使用Javascript Array::filter()消除'null'
字符串,例如:
const input = ['test@gmail.com','test2@gmail.com','null','test3@gmail.com','null',,,,'null'];
let res = input.filter(x => x !== 'null');
console.log(res.join(","));
答案 2 :(得分:1)
To = ['test@gmail.com','test2@gmail.com','null','test3@gmail.com','null','null',,,,,,,,,'test123@gmail.com'] ;
toEmailAddress = _.toString(To)
变为以下内容:
'test@gmail.com,test2@gmail.com,null,test3@gmail.com,null,null,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,test123@gmail.com'
替换后,您可以在下面使用
toEmailAddress.replace(/(null|undefined)\s*,\s*/g, '')
如果您希望将其返回为字符串,结果将在字符串下方,只需在结果字符串上使用split(',')
'test@gmail.com,test2@gmail.com,test3@gmail.com,test123@gmail.com'