【发布时间】:2013-02-08 13:59:08
【问题描述】:
我需要解析同时包含文本和数字的查询字符串。例如以下查询字符串:
?userID=12&team=Sales&quarter=Q1&count=2310
应该被翻译成下面的 JavaScript 对象:
{
userID:12, // not "12"
team:"Sales",
quarter:"Q1",
count:2310 // not "2310"
}
目前我分两步进行:
- 解析查询字符串
- 检查所有参数并确定哪些是数字(使用正则表达式或 isNumber 函数
!isNaN(parseFloat(n)) && isFinite(n)
这似乎相当低效,尤其是因为我的大多数参数都不是数字。有没有更好的办法?
【问题讨论】:
-
不确定这是否适用于 javascript 和 C#,但 ... related question.
-
@jbabey thx,但在我的情况下似乎效果不佳,因为我可能有十进制数字。
标签: javascript numbers query-string url-parameters url-parsing