我使用的是 JSON.stringify
将对象转换为字符串的方法如下。
JSON.stringify(obj).replace(/[{}]/g, '').slice(1, -1)
我得到了下面的输出。
"null,null,"Heading":"Heading1""
我想从上面的字符串中删除所有出现的null,为此我使用了... replace
JSON.stringify(obj).replace(/[{}]/g, '').slice(1, -1).replace('null,', '')
但它只删除了第一次出现的 null
绳子
"null,"Heading":"Heading1""
希望的输出。
"Heading":"Heading1""
就像小伙伴们在评论中说的那样 可能是最好的办法,就是摆脱了 null
元素因此,如果你想这样做,你应该遍历你的对象,然后检查是否有 null
项目。
对于这个原因,这可能会派上用场。
Object.keys(obj).forEach((key) => (obj[key] == null) && delete obj[key]);
否则: 你应该考虑使用一个全局标志(/g
) 中,以便删除所有的 null
发生。
你可以用这样的方法来实现。
.replace(/null,/g, '')
.replace()方法只替换第一次出现的情况。执行全局替换的方法是
.replace(/null,/g, '')
希望对大家有所帮助!