【问题标题】:How to remove all occurrences of string in Javascript如何在Javascript中删除所有出现的字符串
【发布时间】:2020-08-21 19:25:35
【问题描述】:

我正在使用JSON.stringify将对象转换为字符串,如下所示:

JSON.stringify(obj).replace(/[{}]/g, '').slice(1, -1)

我得到以下输出:

"null,null,"Heading":"Heading1""

我想从上面的字符串中删除所有出现的空值,为此我使用replace

JSON.stringify(obj).replace(/[{}]/g, '').slice(1, -1).replace('null,', '')

但它只会删除第一次出现的null 字符串

 "null,"Heading":"Heading1""

期望的输出:

"Heading":"Heading1""

【问题讨论】:

标签: javascript node.js json stringify


【解决方案1】:

正如 peeps 在 cmets 中所说 可能是最好的方法是首先摆脱 null 元素,所以如果你想这样做,你应该遍历你的对象然后检查null 项目。

因此,这可能会派上用场:

Object.keys(obj).forEach((key) => (obj[key] == null) && delete obj[key]);

否则,您应该考虑在您的正则表达式中使用全局标志 (/g),以删除所有出现的 null

您可以通过以下方式实现:

.replace(/null,/g, '')

【讨论】:

    【解决方案2】:

    .replace() 方法只替换第一次出现。执行全局替换为

    .replace(/null,/g, '')
    

    希望对你有帮助!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-12-18
      • 1970-01-01
      • 1970-01-01
      • 2012-06-16
      • 1970-01-01
      • 2012-12-06
      • 1970-01-01
      相关资源
      最近更新 更多