【问题标题】:delete specific quotes in javascript删除javascript中的特定引号
【发布时间】:2016-08-05 08:46:51
【问题描述】:

现在我要编辑这个:

var coordinates = [
         {"lat": 37.772, "lng": -122.214, "status": "walking"},
         {"lat": 36.772, "lng": -123.214, "status: "walking"}
         ];

我使用这样的替换功能:

JSON.stringify(data).replace(/\"/g, "");

但是我把双引号换成“”之后,值walking的双引号也被删除了,但是我希望valuewalking可以保留引号,这样js就可以把它当成字符串了。

【问题讨论】:

  • 您想从 JSON 字符串中删除任何引号,使其在各个方面都无效吗?
  • 首先,你为什么需要这个?您已经获得了有效的 JS 代码。第二件事:您在"status 之后缺少报价。
  • 为了将其设置为js对象,然后我可以为js谷歌地图设置路径。
  • @WenhanHou:它已经一个JS对象了。
  • 这有意义吗?我的意思是,我想删除引号,然后用它来设置地图的路径。

标签: javascript replace quotes


【解决方案1】:

您可以使用此正则表达式获取所有属性并删除其周围的引号:/"([a-z]*?)":/ig。用引号保留字符串值。

var coordinates = [
     {"lat": 37.772, "lng": -122.214, "status": "walking"},
     {"lat": 36.772, "lng": -123.214, "status": "walking"}
];

var x = JSON.stringify(coordinates);

x.replace(/"([a-z]*?)":/ig, (m, m1) => m1 + ':');

之前

[{"lat":37.772,"lng":-122.214,"status":"walking"},{"lat":36.772,"lng":-123.214,"status":"walking"}]

之后

[{lat:37.772,lng:-122.214,status:"walking"},{lat:36.772,lng:-123.214,status:"walking"}]

【讨论】:

    猜你喜欢
    • 2016-03-21
    • 2015-09-10
    • 2018-09-02
    • 2013-11-22
    • 1970-01-01
    • 2020-06-25
    • 1970-01-01
    • 1970-01-01
    • 2018-05-24
    相关资源
    最近更新 更多