javascript - 从查询字符串中检索数字的最有效方法?

标签 javascript numbers query-string url-parameters url-parsing

我需要解析包含文本和数字的查询字符串。例如以下查询字符串:

?userID=12&team=Sales&quarter=Q1&count=2310

应翻译为以下 JavaScript 对象:

{
userID:12, // not "12"
team:"Sales",
quarter:"Q1",
count:2310 // not "2310"
}

目前我分两步进行:

  1. 解析查询字符串
  2. 检查所有参数并确定哪些是数字(使用正则表达式或 isNumber 函数 !isNaN(parseFloat(n)) && isFinite(n)

这看起来效率相当低,尤其是因为我的大多数参数都不是数字。有更好的办法吗?

最佳答案

你知道你要在哪里使用指定值吗?

因为如果您将任何数字格式的字符串(例如“3239”)乘以 1,则会将该字符串转换为数字。

var example = 5 + (o.count*1) //o.count will be a number...

关于javascript - 从查询字符串中检索数字的最有效方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15032851/

相关文章:

javascript - 如何将 HTML 中的图像覆盖在 CSS 中的文本上

Excel - 可变长度数字中前导零的数量可变?

algorithm - 生成数字的分区

rest - 如果我使用 HTTP 方法 POST 来获取数据是否有效?

javascript 对象在 IE 中被覆盖

javascript - 如何在将 shapefile 作为 tileset 上传到 mapbox studio 后渲染形状

javascript - 如何在 CRM 2011 中使用 Javascript 和 oData 获取 PartyList 字段的值

c# - 找出两个可无余数整除的数

javascript - 如何将其中包含 & 作为查询字符串值的字符串发送?

c# - 使用查询字符串 ASP.NET 发布到同一页面