【发布时间】:2014-09-20 10:04:32
【问题描述】:
我正在使用 jQuery.param() 在客户端序列化一个 JSON 对象:
var test = {"coordinates":[[-122.610168,37.598167],[-122.288818,37.598167],[-122.288818,37.845833],[-122.610168,37.845833],[-122.610168,37.598167]]};
console.log($.param( test ));
发出 GET 请求后,在 Express 路由中的服务器端,我通过以下方式访问对象:
console.log('Server received: ' + JSON.stringify(req.query.coordinates));
这将输出以下内容 - 请注意每个坐标周围的引号:
Server received: [["-122.610168","37.598167"],["-122.288818","37.598167"],["-122.288818","37.845833"],["-122.610168","37.845833"],["-122.610168","37.598167"]]
如何删除引号?我可以解析为字符串并使用正则表达式,然后解析回 JSON,但这似乎效率低下。任何人都可以建议添加它们的过程的哪个部分以及如何删除它们?
【问题讨论】:
-
您可以像使用普通数组一样使用
req.query.coordinates,在其上运行 for 并在其中的每个成员上运行parseFloat。如果您不明白,我可以为您发布示例代码。
标签: jquery node.js serialization express quotes